Tag: 绑定

如何在SilverLight 3项目中刷新ListBox.ItemsSource?

我是我的XAML,我有一个ListBox定义 在代码隐藏中,我定义了一个模块级的ObservableCollection设备。 private ObservableCollection devices = new ObservableCollection(); 在OnNavigatedTo事件中,我将集合绑定到列表框 lstStatus.ItemsSource = devices; 该集合很可能不会增长或缩小,但其内部的对象会一直在变化。 无论出于何种原因,当我执行以下代码时,列表不会更新: Device selectedDevice = null; foreach (Device dv in devices) { if (dv.IsTrunk) { selectedDevice = dv; break; } } if (selectedDevice != null) selectedDevice.StatusName = DateTime.Now.ToString(); else throw new Exception(); 事实上,我能够让它工作的唯一方法就是伪造它,从列表中删除项目然后再添加它。 显然不是长期的解决方案。 我错过了什么?

将bool属性绑定到WinForm的BackColor属性

我在WinForm应用程序中有一个Form ,它包含一个TextBox ,这个TextBox绑定到Person对象的FirstName属性。 public class Person { string firstName; public string FirstName { get { return firstName; } set { firstName = value; this.isOdd = value.Length % 2; } } bool isOdd; public bool IsOdd { get {return isOdd; } } } 当我的应用程序运行时,此Form显示并且用户可以将他/她的名称键入TextBox,如何将Form BackColor属性绑定到Person对象的IsOdd属性(当IsOdd为True BackColor设置为Color.Green以及何时是否为False , BackColor设置为Color.Red )?

当DataContext发生更改时,WPF绑定OneWayToSource将source属性设置为“”

我有一个OneWayToSource绑定,当我设置目标控件的DataContext时,它的行为不像我预期的那样。 源的属性设置为默认值而不是目标控件属性的值。 我在标准WPF窗口中创建了一个非常简单的程序来说明我的问题: XAML MainWindow.cs public partial class MainWindow : Window { private ViewModel _vm = new ViewModel(); private void Button1_Click(object sender, RoutedEventArgs e) { Debug.Print(“‘Set DataContext’ button clicked”); tb.DataContext = _vm; } private void TextBox_TextChanged(object sender, TextChangedEventArgs e) { Debug.Print(“TextBox changed to ” + tb.Text); } } ViewModel.cs public class ViewModel { private string […]

绑定ComboBox ItemsSource在WPF中不起作用

这有点奇怪,因为我在那里发现的每个例子都说我正在以正确的方式做事但我无法让我的ComboBox绑定在WPF中工作。 我刚刚创建了一个空的WPF应用程序。 public List myCollection { get; set; } public MainWindow() { DataContext = this; InitializeComponent(); myCollection = new List {“test1”, “test2”, “test3”, “test4”}; } 这是我的xaml: 我试过Binding myCollection,Binding Path = myCollection,我尝试过设置DataContext和不设置DataContext。 似乎没有什么工作。 我已经没有想法了,我发现的每个例子都说这是正确的方法,它应该工作,所以感谢任何帮助我推进。

WPF绑定:属性包含值的路径

我在顶部栏中有一个带有几个TextBlocks的扩展器,我用它来给出一个标题和一条关键信息。 理想情况下,我想设置关键信息的路径,但我无法弄清楚如何将绑定路径绑定到另一条路径(如果我没有多大意义,我道歉!) 在下面的xaml第一位工作,第二位是我正在努力的。 KeyValuePath可能包含类似“Vehicle.Registration”或“Supplier.Name”的内容,具体取决于Model。 有人能指出我正确的方向吗? 任何帮助感激不尽!

过滤使用嵌套的xaml数据模板显示的分层对象

我无法过滤嵌套的xaml模板中显示的分层数据。 我有一个ObservableCollection Foos ,我在XAML中显示。 让我们说Foo看起来像: class Foo { public ObservableCollection Bars; } class Bar { public ObservableCollection Quxes; } 我正在使用以下xaml显示Foos: 换句话说,有一个标签控件,每个Foo都有一个标签。 每个Foo都是一个选项卡控件,每个Bar都包含在它自己的选项卡中。 每个Bar都包含其Quxes的列表框。 要么: ______ ______ ______ | Foo1 | Foo2 | Foo3 | |______ ______ | | Bar1 | Bar2 |______| | | qux1 || | | qux2 || | | qux3 || ———————- […]

如何在multibinding中获取父值

我正在使用dataTemplate 。 这是模板: 你能看到这条线吗? 该行抛出exception,应该是因为RAM.Size来自父元素。 我怎么能得到那个价值? 提前致谢!

WPF从子ItemsControl数据模板内部绑定到父ItemsControl

好的,所以我在这里有一个时髦的…我需要能够从子ItemsControl数据模板内部绑定到父ItemsControl的属性: 我们假设MyParentCollection(外部集合)具有以下类型: public class MyObject { public String Value { get; set; } public List MySubCollection { get; set; } 我们假设上面的类中的MyChildObject属于以下类型: public class MyChildObject { public String Name { get; set; } } 如何从内部数据模板内部绑定到MyParentCollection.Value? 我不能真正按类型使用FindAncestor,因为它们都使用相同的类型。 我想也许我可以在外部集合上添加一个名称并在内部绑定中使用ElementName标记,但仍然无法解析该属性。 有什么想法吗? 我被困在这一个……

当我“新”它时,ObservableCollection失去绑定

我的UI上有一个ListBox,它绑定到ObservableCollection的属性。 我将ObservableCollection的新实例设置到视图模型的构造函数中的属性中,我可以使用表单上的按钮向其添加项目。 这些在列表中可见。 一切都很好。 但是,如果我在按钮回调中使用new重新初始化该属性,则会破坏绑定,并且UI不再显示集合中的内容。 我假设绑定将继续查找属性的值,但它可能与新的销毁的引用相关联。 我做对了吗? 任何人都可以扩展它的链接方式吗? 当我的视图模型不了解视图时,有没有办法重新绑定它?

MvvMCross与格式字符串绑定

如何为绑定添加格式,使用string.Format或类似的东西格式化绑定值? 我在其他线程中看到,您可以传递一个converterName。 是否存在针对此问题的转换器? 我在哪里可以看到MvvMCross v3的标准转换器列表? 我很快浏览了代码,但找不到任何东西。 我知道可能会发生信息丢失,这会破坏双向绑定,但我只想要这个来显示值。 我的具体案例是DateTime的绑定。 bindings.Bind(purchaseDate).To(vm => vm.RegisteredDevice.PurchaseDate); 我的愿望,例如: bindings.Bind(purchaseDate).To(vm => vm.RegisteredDevice.PurchaseDate).WithFormat(“hh:mm”);