在这个视图模型中,我有一个名为Customer的属性,我将客户对象的属性绑定到我的视图上的控件.
但是我也希望能够将IsReadonly绑定到我视图上的每个控件.
<TextBox x:name="FirstnameTextBox" GrID.Column="1" margin="2,2,2" GrID.Row="2" textwrapPing="Wrap" HorizontalAlignment="left" WIDth="200" Text="{Binding Firstname,Mode=TwoWay}" IsReadonly="{Binding Myviewmodel.IsReadonly}"/>
我怎样才能使用这两个属性?
这是我的结构
公共类MyviewmodelBase {
public bool IsReadonly {get; set;}
}
公共类Myviewmodel {
公共客户客户{get;组; }
}
公共类客户{
public string Familyname {get;组; }
}
欢呼任何帮助
解决方法 我假设您的Myviewmodel继承自MyviewmodelBase.public class MyviewmodelBase { public bool IsReadonly { get;set;} }public class Myviewmodel : MyviewmodelBase { public Customer Customer { get; set; } }public class Customer { public string Familyname { get; set; } }
我还假设您的视图DataContext是Myviewmodel的一个实例,如果不让我知道:)您的绑定应该如下所示:
<TextBox x:name="FirstnameTextBox" GrID.Column="1" margin="2,2" GrID.Row="2" textwrapPing="Wrap" HorizontalAlignment="left" WIDth="200" Text="{Binding Customer.Familyname,Mode=TwoWay}" IsReadonly="{Binding IsReadonly}"/>
编辑:如果TextBox的DataContext是Customer属性,则必须在Binding to IsReadonly中使用relativeSource
总结以上是内存溢出为你收集整理的wpf – MVVM绑定属性和子属性全部内容,希望文章能够帮你解决wpf – MVVM绑定属性和子属性所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)