Tag: wpf controls

文本框值已更改

是否可以知道应用程序中是否有任何文本框值已更改。 我有大约30个文本框,我想只运行一部分代码,如果任何文本框的值已经改变了30.有没有办法我可以知道。

寻找WPF的对象图树视图控件

我正在尝试查找代码或预先打包的控件,它采用对象图并在TreeView中显示属性的公共属性和值(递归)。 即使是天真的实现也没问题,我只需要一些东西就可以了。 解决方案必须是WPF,而不是winforms或com等…

如何从RichTextBox获取RTF

如何获取RichTextBox RTF中的文本? 我试图这样,但财产不存在。 RichTextBox rtb = new RichTextBox(); string s = rtb.Rtf;

在Aero上覆盖WPF中的按钮背景

因此,希望很简单,将按钮的背景更改为LightGreen,当鼠标光标hover在其上时为绿色,按下时将DarkGreen更改为DarkGreen。 以下XAML是我的第一次尝试: Hello 但是,唉,这不起作用。 我们只是实现目标的1/3。 是的,按钮变为浅绿色,但只要将鼠标hover在按钮上或按下它,您就会获得相应按钮状态的标准Aero镀铬。 不想放弃,我尝试以下放荡: … Hello … 现在我们已经从Aero.NormalColor.xaml中获得了整个friggin’控制模板。 唉,这没什么改变。 然后我从Microsoft_Windows_Themes:ButtonChrome元素中删除两个属性( RenderPressed和RenderMouseOver )。 不过,没有变化。 然后我删除Button的Background属性的设置,只留下PresentationFramework.Aero程序集的名称空间声明: … Hello … 最后,我们取得了进展。 我们已经从1/3的要求变为2/3,IsMouseOver和IsPressed工作,但在按钮的正常状态(没有被碾压或按下)时没有浅绿色背景,因为我已经删除了按钮的Background属性,以使其他两个状态应用并可见。 现在,在这个疯狂的XAML无法让我们获得正常按钮状态的LightGreen背景之后,我修改了样式以在那里抛出背景颜色: <Button xmlns… <ControlTemplate… … 最后,它按预期工作。 我是疯了,还是这些(以及更多)你必须通过Aero主题来改变一个按钮的背景颜色(正常,hover,按下)? 也许,如果我不必将整个dang ButtonTemplate包含在那里,只是为了从中删除两个属性( RenderMouseOver和RenderPressed ),生活就不会那么糟糕。 谢谢你的帮助 – 我结束了。 更新:但等待还有更多。 而不是从控件模板中删除RenderMouseOver和RenderPressed属性,只需从以下位置更改它们: <Microsoft_Windows_Themes:ButtonChrome SnapsToDevicePixels="true" … RenderMouseOver="{TemplateBinding IsMouseOver}" RenderPressed="{TemplateBinding IsPressed}" … 至: <Microsoft_Windows_Themes:ButtonChrome SnapsToDevicePixels="true" … RenderMouseOver="{Binding IsMouseOver}" RenderPressed="{Binding IsPressed}" … […]

如何将2D数组bool 绑定到WPF DataGrid(单向)?

我有这样的矩阵类数据网格。 这个网格完全是用XAML设计的 现在如何使用二维数组将值插入到这些datagridcell中? 需要插入的值必须是bool数据类型(TRUE或FALSE)。 有任何想法吗 ?

将WPF文本框设为剪切,复制和粘贴限制

如何将WPF文本框剪切,复制和粘贴限制?

我可以将WPF控件绑定到字段的属性吗?

因为我需要在类之间拆分某些function,所以我遇到了以下情况 xaml代码 查看模型 … public MyInternalObject MyObjectField; … MyObject类 public class MyInternalObject { … public bool MyBoolean { get; set; } … } 除非我在View Model类中复制MyBoolean属性,否则它不起作用。 public bool MyBoolean { get { return MyInternalObject.MyBoolean; } set { MyInternalObject.MyBoolean=value; } } 有没有人有想法?

我需要访问combobox的非公共成员(突出显示的项目)

我正在为应用程序实现密钥导航,并且我希望在聚焦Combo Box时覆盖空格键function,使其像enter键一样; 像这样: if (!cb.IsDropDownOpen) { cb.IsDropDownOpen = true; } else { cb.SelectedItem = cb.{non-public member HighlightedItem}; cb.IsDropDownOpen = false; } 问题是我需要获取该非公共成员的值,以便我可以设置所选值并关闭下拉列表(输入通常如何工作)。 现在的问题是:实现这一目标的最快和最轻松的方法是什么?

WPF – 根据某些条件选择启动窗口

通过单击Run或按Ctrl + F5运行程序时,是否可以根据某些检查条件打开不同的窗口? 即如果满足某些条件我想打开一个特定的窗口,但如果不是我想打开另一个窗口。 它应该像打开任何一个窗口之前一样,首先要检查条件 if(File.Exists() Open Window 1 else Open Window 2 这可能吗?

如何自动滚动ScrollViewer – 仅当用户没有更改滚动位置时

我想在包装ContentControl的ScrollViewer中创建以下行为: 当ContentControl高度增加时, ScrollViewer应自动滚动到结尾。 使用ScrollViewer.ScrollToEnd()很容易实现。 但是,如果用户使用滚动条,则不应再进行自动滚动。 这类似于VS输出窗口中发生的情况。 问题是要知道由于用户滚动而发生滚动的时间以及由于内容大小发生变化而发生滚动的时间。 我尝试使用ScrollChangedEventArgs的ScrollChangedEvent ,但无法使其工作。 理想情况下,我不想处理所有可能的鼠标和键盘事件。