Tag: wpf

在ItemsControl DataTemplate中设置Canvas属性

我试图绑定到这个ItemsControl : <ItemsControl ItemsSource="{Binding Path=Nodes, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"> <ItemsControl.ItemsPanel> <ItemsPanelTemplate> <Canvas /> </ItemsPanelTemplate> </ItemsControl.ItemsPanel> </ItemsControl> 通过使用这个DataTemplate ,我试图单独地将我的Node元素放置在Canvas : <DataTemplate DataType="{x:Type Model:EndNode}"> <Controls:EndNodeControl Canvas.Left="{Binding Path=XPos}" Canvas.Top="{Binding Path=YPos}" /> </DataTemplate> 但是,它没有按预期工作。 我所有的节点元素都在同一个位置上绘制。 有关如何完成此任何build议?

在WPF中有DesignMode属性吗?

在Winforms中,你可以说 if ( DesignMode ) { // Do something that only happens on Design mode } WPF中有这样的东西吗?

如何让一组切换button的行为像WPF中的单选button?

我有一组button应该像切换button,但也作为单选button,只有一个button可以select/按下在当前时间。 它也需要有一个没有select/按下button的状态。 该行为将有点像Photoshop工具栏,在任何时候select零或一个工具! 任何想法如何在WPF中实现?

如何在WPF DataGrid中单击checkboxselect?

我有一个DataGrid第一列作为文本列和第二列作为CheckBox列。 我想要的是,如果我点击checkbox。 它应该得到检查。 但是,需要两次点击才能被选中,首先点击单元格被选中,第二次点击checkbox被选中。 如何使checkbox得到检查/取消选中一次点击。 注意:我正在使用WPF 4.0 编辑: DataGrid中的列是自动生成的。

从MVVM WPF项目中的DataGrid中select多个项目

如何从MVVM WPF项目中的DataGrid中select多个项目?

什么是ViewModelLocator,与DataTemplates相比有什么优点/缺点?

有人能给我一个什么是ViewModelLocator的快速总结,它是如何工作的,以及与DataTemplates相比使用它的优点/缺点是什么? 我曾尝试在Google上查找信息,但是似乎有很多不同的实现方式,并且没有详细列出它是什么以及使用它的优缺点。

如何使用DataContext属性在XAML中的窗口上设置ViewModel?

这个问题几乎说明了一切。 我有一个窗口,并试图设置DataContext使用完整的命名空间的ViewModel,但我似乎做错了什么。 <Window x:Class="BuildAssistantUI.BuildAssistantWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" DataContext="BuildAssistantUI.ViewModels.MainViewModel">

在WPF应用程序中全局捕获exception?

我们有一个WPF应用程序,其中的一部分可能在运行时抛出exception。 我想在全球范围内捕捉任何未处理的exception并将其logging下来,否则继续执行程序,就好像什么也没发生一样(有点像VB的On Error Resume Next )。 这在C#中可能吗? 如果是这样的话,我需要把exception处理代码放在哪里? 目前我看不到任何单一的地方,我可以包装一个try / catch ,并捕获所有可能发生的exception。 即使这样,我也不会因为这个问题而放弃任何已经被处决的事情。 还是我在这里考虑可怕的错误方向? ETA:因为很多人指出:应用不是用来控制核电站的。 如果它崩溃,这不是什么大不了的事情,但大多数与UI相关的随机exception在它将被使用的上下文中是令人讨厌的。 那里有(也可能还有)其中一些,因为它使用插件架构,可能会被其他人(也就是在这种情况下的学生;所以没有经验丰富的开发人员能够编写完全无差错的代码)进行扩展。 至于被捕获的exception:我将它们logging到日志文件中,包括完整的堆栈跟踪。 那是这个练习的重点。 只是为了对付那些把我的比喻成VB的OERN字面的人。 我知道,盲目地忽略某些类别的错误是危险的,可能会破坏我的应用程序实例。 如前所述,这个程序对任何人都不是任务关键的。 没有一个正确的头脑会把人类文明的生存下去。 这只是testing某些devise方法的一个小工具。 软件工程。 对于应用程序的直接使用,在例外情况下可能不会发生很多事情: 没有exception处理 – 错误对话框和应用程序退出。 实验必须重复,尽pipe可能与另一个主题。 没有错误logging,这是不幸的。 一般exception处理 – 良性错误被困,没有造成伤害。 这应该是从我们在开发过程中看到的所有错误判断的常见情况。 忽视这种错误不应该有直接的后果。 核心数据结构经过了充分的testing,可以轻松实现。 一般的exception处理 – 严重的错误被困,可能会在稍后崩溃。 这可能很less发生。 到目前为止,我们从未见过。 无论如何这个错误是logging的,崩溃可能是不可避免的。 所以这在概念上类似于第一种情况。 除了我们有一个堆栈跟踪。 在大多数情况下,用户甚至不会注意到。 至于程序产生的实验数据:最严重的错误只会导致没有数据被logging。 微妙的变化改变了实验的结果,所以很less发生。 即使在这种情况下,如果结果看起来可疑,logging的错误; 如果它是一个总exception值,仍然可以丢弃该数据点。 总结一下:是的,我认为自己仍然至less有一部分是理智的,我不认为全局的exception处理程序会导致程序运行必然是完全邪恶的。 如前所述,这样的决定可能是有效的,这取决于应用程序。 在这种情况下,它被判断为一个有效的决定,而不是完全和彻底的废话。 对于任何其他应用程序,这个决定可能看起来不同 但是请不要指责我或者其他从事这个项目的人有可能因为我们忽略了错误而炸毁世界。 […]

ContentControl和ContentPresenter有什么区别?

我不知道何时应该使用ContentPresenter而不是ContentControl (反之亦然)。 目前,我在DataTemplate几乎一直使用ContentControl 。 ContentPresenter何时会是更好的select? 为什么?

没有ListBox.SelectionMode =“None”,有没有另一种方法来禁用select列表框?

如何禁用ListBox中的select?