Tag: 绑定

有没有办法刷新WPF中的所有绑定?

如果我的代码看起来有点像下面的代码,是否可以直接刷新所有绑定或我是否必须硬编码所有绑定刷新? 服务端: [ServiceContract] public interface IMyServiceContract { [OperationContract] MyDataContract GetData(); } [ServiceBehavior] public class MyService { [OperationBehavior] public MyDataContract GetData() { MyDataContract data = new MyDataContract(); data.val1 = “123”; data.val2 = “456”; return data; } } [DataContract] public class MyDataContract { [DataMember] public string val1; public string val2; } 客户端xaml(省略了名称空间样板代码): 客户端代码behing: public partial class MyWindow […]

WPF绑定ListBox主/详细信息

我可以使用XmlDataSource但不能使用我自己的类。 我想要做的就是将列表框绑定到我的集合实例,然后将文本框链接到列表框,以便我可以编辑该人的姓名(双向)。 我故意保持这个尽可能简单,希望有人可以填补空白。 XAML: Name C#代码背后: namespace WpfListTest { /// /// Interaction logic for Window1.xaml /// public partial class Window1 : Window { public People MyPeeps = new People(); public Window1() { InitializeComponent(); MyPeeps.Add(new Person(“Fred”)); MyPeeps.Add(new Person(“Jack”)); MyPeeps.Add(new Person(“Jill”)); } } public class Person { public string Name { get; set; } public Person(string newName) […]

使用Data Virtualization,将ViewModel中的属性与View中ItemsControl的SelectedItem绑定的问题

关于WPF中的Data Virtualizatoin, WPF:Data Virtualization是一篇很好的文章。 使用它,Data Virtualization在我的代码中执行得很好,但是有一个问题,就是我无法将ViewModel中的属性与View中的ItemsControl的SelectedItem绑定。 如果一个数据项在数据加载时满足某些条件,则一个项目将在ViewModel中设置为属性,然后它将与View中的ItemsControl的SelectedItem绑定,但不会。 我的代码如下。 关于IItemsProvider和VirtualizationCollection的类型,请参阅WPF:Data Virtualization 。 到目前为止,我尝试过: 我敢肯定,如果没有使用Data Virtualization,那么Selected Item Binding会很酷。 VirtualizingCollection中的IndexOf(T item)方法始终返回-1。 考虑到这将是问题,我实现了IndexOf(T项)返回实际索引,但它不关心这个问题。 实现IItemsProvider的代码 public class WordViewModelProvider : IItemsProvider { private string _searchText = “some text”; public WordViewModel SelectedItem { get; private set; } #region IItemsProvider Members public int FetchCount() { lock (_words) { int count = (from word […]

如何使用复选框动态更改WPF控件的模板?

我有一个错误对话框(如下所示)。 我在ContentControl中显示Report对象,我已经为其定义了一个Template simpleErrorTemplate 模板 。 窗口上有一个CheckBox ,我想用来将模板更改为详细的ErrorErrorTemplate 。 实现这一目标的最佳方法是什么? Show Details

ViewModel中的MediaElement.play()

我正在努力解决以下问题: 我正在使用MVVM patern构建WP8应用程序。 我在view.xaml上有一个媒体元素,以及在我的viewmodel.cs中控制这个媒体元素的逻辑(例如,播放,停止,暂停和音量)。 如何使用绑定从我的viewmodel在此媒体元素上播放声音。 不破坏MvvM的目的和结构。 (PS:我看过以下post,但我不确定如何实现它? 链接到post )

C#/ WPF:将Datagrid中的Combobox ItemSource绑定到DataContext外部的元素

我想做以下事情: public List PreLoadedUserList { get; set; } public List SomeDataRowList { get; set; } public class Users { public int Age { get; set; } public string Name { get; set; } } public class SomeDataRowList { public int UserAge { get; set; } 现在我的(WPF Toolkit)DataGrid看起来像这样: 现在我的问题是,PreLoadedUserList在ItemSource(SomeDataRowList)之外,我不知道如何绑定到它之外的东西。 我真正想要它: – 在ComboBox中显示PreLoadedUserList – 将(RowEntries)SelectedItem.UserAge的值设置为所选ComboboxItem.Age的值 如果我的解释太奇怪,请告诉我:-) 谢谢,干杯

从代码绑定到WinRT / UWP中的自定义附加属性

我正在尝试从一个针对多个框架(WPF,WinRT,UWP等)的库中的代码创建绑定,并且我正在打砖墙。 我想要绑定的属性是一个自定义附加属性。 在WPF中,我可以将DependencyProperty本身作为绑定路径传递: new PropertyPath(MyClass.MyAttachedProperty) 但是在WinRT中, PropertyPath类只接受一个字符串。 我试图传递属性的名称,如下所示: new PropertyPath(“(MyClass.MyAttachedProperty)”) 但当然它不起作用,因为我的类不在默认命名空间中。 在XAML中,我可以将命名空间映射到前缀并使用该前缀,但据我所知,不可能从代码中执行此操作。 有没有办法在代码中创建这个绑定?

如何将控件的属性绑定到另一个控件的属性?

当表单被禁用时,我希望我的表单中的SaveButton消失。 我这样做: this.formStackPanel.IsEnabled = someValue; if(this.formStackPanel.IsEnabled) { this.saveButton.Visibility = Visibility.Visible; } else { this.saveButton.Visibility = Visibility.Collapsed; } 是不是有办法在XAML中绑定这些属性? 有没有更好的方法呢?

如何在C#和MVVM中实现异步操作?

什么是在WPF和MVVM上实现异步操作的最简单方法,让我们说如果用户在某个字段上输入时我想要启动命令然后返回,而线程将执行一些搜索操作然后返回更新属性,以便通知可以更新绑定。 谢谢!

WPF DataGrid如何根据绑定数据将ColumnType设置为不同的类型?

我有“首选项”数据结构,其中我有字符串“值”字段和“类型”字段的枚举。 类型可以是0-Boolean,1-Integer,2-String … 根据此类型字段中的值,我想以不同的方式显示“值”单元格复选框,文本框,下拉列表等。因此,要清楚 – 相同的列应根据该行中的数据显示不同的单元格。 我想我需要使用DataGridTemplateColumn,但我从来没有这样做过,如果可能的话,我想要一些例子。 另外,我可以用XAML做什么以及在Code中需要做什么? 我想也必须使用Value转换器?