绑定FontSize无法使用Xamarin表单吗?

时间:2019-02-14 11:06:03

标签: xamarin xamarin.forms

XAML:

<Button Text="Submit" FontSize="{Binding BtnFontSize,Mode=Twoway}"/>

ViewModel:

string _btnFontSize;
        public string BtnFontSize
        {
            get { return _saveBtnFontSize; }
            set
            {
                _saveBtnFontSize = value;
                OnPropertyChanged();
            }
        }

首次设置其作品时=> BtnFontSize="Large" 它无法正常工作后=> BtnFontSize="Small"

1 个答案:

答案 0 :(得分:2)

进行以下更改,它应该可以工作:

删除不需要的双向绑定

<Button Text="Submit" FontSize="{Binding BtnFontSize}"/>

在OnPropertyChanged方法中传递属性名称

 private double _btnFontSize;
 public double BtnFontSize
    {
        get { return _saveBtnFontSize; }
        set
        {
            _saveBtnFontSize = value;
            OnPropertyChanged(nameof(BtnFontSize));
        }
    }

要获取默认的xamarin表单标签字体大小,请使用NamedSize枚举:

应该类似于以下内容,例如,将大小设置为“中”,您将执行以下操作

BtnFontSize= Device.GetNamedSize (NamedSize.Medium, typeof(Label)),

typeof(Label)表示您正在使用的控件,因此当您需要设置按钮字体大小时,将在此处传递按钮