Tag: wpf

使用WPF和Caliburn.Micro在视图中添加多个视图

我正在尝试使用带有WPF的Caliburn.Micro学习。 如何在视图中添加多个视图? 另一个视图,带有viewmodel:MyControlViewModel … 如果我只是添加视图,它将不会检测到它具有具有适当名称的viewmodel。 我怎么能把它绑在上面呢? 我已尝试使用不同的bootstrappers并使用类似cal:Bind.Model =“path / classname / merge of the two”。 试图将其添加到主视图和usercontrol(MyControlView)。 我非常感谢有关此事的任何帮助。 我几乎被卡住了,我真的想用Caliburn.Micro 🙂 最好的问候,钻石鱼 编辑:我仍然无法让它工作,问题似乎是在引导程序或其他东西。 但只是为了澄清,这是我正在为testproject运行的代码。 MainView xaml: MainViewModel代码: public partial class MainViewModel : PropertyChangedBase { } MyControlView xaml: MyControlView代码: public class MyControlViewModel : PropertyChangedBase { public string MyProp { get { return “Working”; } } } 错误的屏幕截图: http […]

WPF:如何每秒30次有效地更新图像

我正在编写一个使用组件的WPF应用程序,该组件将指针(IntPtr)返回到位图的像素(stride * height)。 我事先知道位图是24位rgb,它的宽度和高度。 使用这些位图更新Image控件会为用户构成一个video,但我不确定最有效的方法是什么,大多数情况下CPU使用率达到75%+且内存从40mb变为500mb nI认为GC开始工作然后再次下降到40mm。 该应用程序开始没有响应。 我该怎么办? 谢谢!

WPF中的网格表

我需要创建一个网格。 它应该是可编辑的 我应该设置行数和列数。 例如 mygrid.RowCount = 3; mygrid.ColumnCount = 3; 它应该是这样的: 如何将2D数组绑定到DataGrid?

WPF用户控件与自定义控件

我正在尝试创建一个带有每行复选框的combobox,以允许多次选择。 作为用户控件或自定义控件,这会更好吗? 我之前没有创建过一个控件,只是想找一些关于我需要走向的方向的建议。 谢谢。

如何在WPF中执行操作之前放置延迟

我尝试使用以下代码在导航到下一个窗口之前延迟2秒。 但线程首先调用,文本块显示一微秒,然后进入下一页。 我听说调度员会这样做。 这是我的片段: tbkLabel.Text = “two mins delay”; Thread.Sleep(2000); Page2 _page2 = new Page2(); _page2.Show();

WPF Sentinel对象以及如何检查内部类型

正如你们中的一些人发现的那样,一个新的特性(?)出现在WPF 4中,其中数据绑定引擎可以将名为“ {DisconnectedItem} ”的类MS.Internal.NamedObject的自定义控件实例传递给DataContext – 而不是您的代码所期望的数据项(当模板控件被其ItemsControl断开时会发生这种情况)。 这些被称为哨兵对象。 在现有代码中,这可能导致虚假exception,其中代码没有准备好。 这些可以被数据绑定子系统吞噬,或者它们可能造成严重破坏。 密切关注您的调试控制台。 无论如何,我在这个MSDN论坛上了解到了这一点 。 Sam Bent的post解释了这一切 。 现在去看看, 你会想知道这一点 。 本质上是这些事件永远不会被解雇(这就是错误),所以: 如果DataContext是sentinel对象,则忽略DataContextChanged事件。 所以,我想检查一下我的DataContext。 但是怎么样? 考虑: public bool IsSentinelObject(object dataContext) { return (dataContext is MS.Internal.NamedObject); } 猜猜会发生什么? 它没有编译,因为MS.Internal.NamedObject是内部的,我无法访问。 当然,我可以像这样破解它: public bool IsSentinelObject(object dataContext) { return dataContext.GetType().FullName == “MS.Internal.NamedObject” || dataContext.ToString() == “{DisconnectedObject}”; } (或其他东西,有效)。 我也遵循Sam的建议缓存对象以供以后引用相等性检查(它是一个单例)。 当然,这意味着我没有问题,不是真的。 但我很好奇,这篇文章肯定会让一些用户受益,所以无论如何都值得问: 有没有一种方法可以根据内部NamedObject类型精确检查类型,而无需求助于字符串比较?

使用数据模板(WPF)在ListBox中内联编辑TextBlock

使用WPF,我有一个ListBox控件,里面有一个DataTemplate 。 相关的XAML代码如下所示: 我想要做的是让TextBlock响应(双)单击,将其转换为TextBox 。 然后,用户可以编辑描述,然后按返回或更改焦点进行更改。 我尝试在与TextBlock相同的位置添加一个TextBox元素并使其可见性Collapsed ,但我不知道当用户单击TextBlock时如何导航到正确的TextBox 。 也就是说,我知道用户点击了某个TextBlock ,现在我显示哪个 TextBox ? 任何帮助将非常感激, -Ko9

多语种wpf应用程序

我有一个WPF应用程序(英文),我想让用户选择不同的语言。 我已经阅读了一些在运行时应用程序中更改语言的可能性,但我只想在安装时选择一种语言,而不是更改它。 您认为最快最容易的方法是开发不同版本的程序(仅更改文本语言)并让用户在安装过程中选择其中一个版本吗? 可能重复代码只更改文本框或标签不是很优雅,但请注意我的应用程序用英语完成,我不需要在运行时更改语言。

如何将此WPF控件添加到我的WinForm中?

我知道我必须使用ElementHost在WinForm中显示WPF控件,但由于WPF控件是第三方软件,它只附带一个XML文件和一个DLL文件。 控件是AvalonEdit ,我将ICSharpCode.AvalonEdit.xml和ICSharpCode.AvalonEdit.dll文件添加到我的项目中,然后我转到Project -> Add Reference并添加了DLL作为参考。 现在我可以在我的代码中访问ICSharpCode命名空间,所有的类和方法都暴露出来,但从这一点来说,我不确定如何在我的WinForm中实际使用该控件。 我期待WPF控件出现在解决方案资源管理器中,但事实并非如此。 我尝试将一个ElementHost控件添加到我的WinForm中,但是当我尝试选择托管内容时,没有控件出现,所以它不知道我的WPF控件。 如何在WinForm中使用AvalonEdit WPF控件?

如何检查DateTime.Now是否在两个给定的DateTimes之间仅用于时间部分?

对于我的应用程序,我需要知道Now()是否介于两个值之间。 用户可以设置开始时间和结束时间,这样他就不会被通知打扰(例如在夜间)。 因此,如果有两个TimePicker (开始和结束时间),用户可以设置。 假设用户将StartTime设置为22:00 07:00 , EndTime设置为07:00 (这将覆盖夜晚)。 如何检查DateTime.Now是否在选定的开始和结束时间之间? 编辑:我只希望这与小时和分钟部分一起使用。 因此,如果用户设置开始和结束时间,这应该适用于每晚。