Tag: 用户界面

在WPF中使用MVVM将n个矩形添加到canvas

我想在我的mvvm应用程序的主窗口中添加一组矩形。 在我的viewModel中,我有一个对象集合,我用转换器转换为System.Windows.Shapes.Rectangle类(代码如下): 视图模型: RecognizedValueViewModel { public ObservableCollection BarcodeElements { get { return _BarcodeElements; } set { _BarcodeElements = value; } } public RecognizedValueViewModel() { BarcodeElements = InitializeBarcodeElements(); } } 转换器: public BarcodeElementToRectangleConverter : IValueConverter { public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture) { Rectangle barcodeRectangle = GetRectangleFromBarcodeElement(value as BarcodeElement); return barcodeRectangle; } […]

GUI和Windows服务通信

我知道自Vista以来,C#无法直接将UI表单挂钩到Windows服务。 这是在Microsoft网站上说明的。 我在这方面的问题是:“从用户界面到服务的最佳通信方式是什么?” 我听说过远程处理,Web服务和直接TCP。 还有其他方法吗? 他们如何与前面提到的方法进行排名? 他们实施起来有多复杂? 我的应用程序是用于Intranet,而不是Internet。 微软平台将是双方的,因此互操作性不是一个因素,但速度是。 我的意思是我想要在网络上获得最小的数据包。 TIA

跨线程操作无效

可能重复: 跨线程操作无效:从创建它的线程以外的线程访问控制 好的,我知道为什么这会给我这个错误: 跨线程操作无效:控制从其创建的线程以外的线程访问的“Form1”。 但是……我怎样才能使这个可行? System.Threading.Thread t = new System.Threading.Thread(()=> { // do really hard work and then… listView1.Items.Add(lots of items); lots more UI work }); t.Start(); 我不关心Thread何时或如何完成,所以我并不关心任何花哨或过于复杂的atm,除非它在使用新线程中的UI时会更容易。