Tag: wpf

通过Generic类型参数访问属性

我正在尝试为我的模型创建一个通用存储库。 目前我有3种不同的型号,它们之间没有任何关系。 (联系人,备注,提醒)。 class Repository where T:class { public IQueryable SearchExact(string keyword) { //Is there a way i can make the below line generic //return db.ContactModels.Where(i => i.Name == keyword) //I also tried db.GetTable().Where(i => i.Name == keyword) //But the variable i doesn’t have the Name property since it would know it only in the […]

按名称查找WPF控件

我找到了一些帮助,找到了引用C#编程的控件的最佳方法 如果我预先在XAML中包含一个标签并将其命名为marketInfo那么在代码中我可以设置Tag属性 marketInfo.Tag = timeNow; 但是,我正在构建控件并使用类似的东西为每个名称分配名称 System.Windows.Controls.Label lbl = new System.Windows.Controls.Label(); lbl.Content = market.name + ” – ” + DateTime.Now.ToLocalTime().ToLongTimeString(); lbl.HorizontalContentAlignment = System.Windows.HorizontalAlignment.Left; lbl.Height = 40; lbl.Name = @”_” + “marketInfo” + countMarket; 如何从其他方法引用这些控件? 我已经阅读了一些建议使用visualtreehelperpost,但这似乎需要循环控件才能找到特定的控件。 有没有办法按名称访问控件以避免循环? 例如类似的东西 //pseudo code SomeControl(“_marketInfo5”).Tag = timeNow; 谢谢

自定义绘制控件的可怕性能

我在wpf进行简单的图形控制。 我无法解释或解决性能问题:与winforms相比,它太慢了。 也许我做错了什么。 我准备演示来演示这个问题。 这是测试控制: public class Graph : FrameworkElement { private Point _mouse; private Point _offset = new Point(500, 500); public Graph() { Loaded += Graph_Loaded; } private void Graph_Loaded(object sender, RoutedEventArgs e) { // use parent container with background to receive mouse events too var parent = VisualTreeHelper.GetParent(this) as FrameworkElement; if (parent != […]

如何使用线程或计时器从WPF客户端应用程序定期执行方法

我正在开发一个WPF客户端应用程序。这个应用程序定期向webservice发送数据。 当用户登录应用程序时,我希望每5 mts运行特定方法将数据发送到.asmx服务。 我的问题是我是否需要使用线程或计时器。这个方法执行应该在用户与应用程序交互时发生。 即在此方法执行期间不阻止UI 要查找的资源是什么?

WPF在单独的UI线程上加载动画? (C#)

好的,我有一个加载动画,在填充大型DataTable时运行,让用户知道程序没有冻结。 我有动画工作正常,但它也冻结了DataTable也在更新。 有没有办法拥有多个UI线程,以便在DataTable加载信息时动画将继续运行? 编辑:当前代码如下。 private void CreateFileTable() { file_data = new DataSet(); data_table = new DataTable(); file_data.Tables.Add(data_table); DataColumn tempCol = new DataColumn(“File Name”, typeof(string)); data_table.Columns.Add(tempCol); tempCol = new DataColumn(“Ext”, typeof(string)); data_table.Columns.Add(tempCol); tempCol = new DataColumn(“Size”, typeof(string)); data_table.Columns.Add(tempCol); tempCol = new DataColumn(“Created”, typeof(Label)); data_table.Columns.Add(tempCol); tempCol = new DataColumn(“Modified”, typeof(Label)); data_table.Columns.Add(tempCol); tempCol = new DataColumn(“Accessed”, typeof(Label)); data_table.Columns.Add(tempCol); […]

按钮样式的内容仅出现在一个Button实例中

我有一个Viewbox: 然后我将其包含在样式中: 现在我使用SampleStyle创建了许多按钮 但是, 只有一个按钮具有椭圆(视图框) 如何让所有按钮都显示/显示椭圆?

使用WPF Visual层的高性能图形

我正在创建一个WPF映射程序,它可能会在任何时候将数百个文件加载并绘制到屏幕上,并且用户可能想要缩放和平移此显示。 其中一些文件类型可能包含数千个点,这些点很可能作为某种路径连接。 其他支持的格式将包括TIFF文件。 具有绘制所有数据的单个DrawingVisual是否更好,或者我应该为每个加载的文件创建一个新的DrawingVisual? 如果有人可以就此提出任何建议,我将不胜感激。

使用INotifyPropertyChanged的静态属性。 C#

我正在尝试创建一个静态属性,其中INotifyPropertyChanged将更新对我绑定的DataGrid ComboBox所做的任何更改。 我收到此错误, 错误CS0026关键字’this’在静态属性,静态方法或静态字段中无效 通过我的搜索,我发现了为什么你不能在.Net的静态方法中使用关键字’this’? ,但即使经历了一切,我仍然无法弄清楚如何让这个工作。 但是,我改变的任何东西只会否定我试图用INotifyPropertyChanged制作一个静态属性??? 我的代码: private static List _nursingHomeSectionListProperty; public static List NursingHomeSectionListProperty { get { return _nursingHomeSectionListProperty; } set { _nursingHomeSectionListProperty = value; NotifyStaticPropertyChanged(); } } 而Property改变了处理程序 public static event PropertyChangedEventHandler StaticPropertyChanged; public static void NotifyStaticPropertyChanged([CallerMemberName] string propertyName = null) { StaticPropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName)); } 以下代码是我如何使用属性更改处理程序的非静态属性, public event PropertyChangedEventHandler PropertyChanged; public […]

如何使用Xaml中的SortDescriptions对TreeView项进行排序?

我有一个绑定到TreeView的Layers列表,其中每个实例都有一个Effects列表。 我通过HierarchicalDataTemplate显示它们很好,但我试图使用SortDescriptions对它们进行排序。 我不知道如何在xaml中执行此操作,但这样做只排序第一级别的项目,而不是子项目: ICollectionView view = CollectionViewSource.GetDefaultView ( treeView1.ItemsSource ); view.SortDescriptions.Add ( new SortDescription ( “Name”, ListSortDirection.Ascending ) ); 我试图先用.Color ,然后按.Name对它们进行排序。 有任何想法吗? 编辑:我添加了这段代码: 但这仍然只适用于第一级层次结构。 如何为每个图层指定它。影响集合?

如何获取存储在资源中的图像的Uri

我有两个.png文件添加到我的资源,我需要在进行绑定时访问他们的Uri。 我的xaml代码如下: 使用ImagePath的binding代码是: ImagePath = resultInBinary.StartsWith(“1”) ? Properties.Resources.LedGreen : Properties.Resources.ledRed; 然而 Properties.Resources.LedGreen 返回一个Bitmap而不是包含该特定图像的Uri的String 。 我只是想知道如何提取该值而无需在存储的目录中寻址图像的路径。 (老实说,我不确定是不是正确的事情,因为我在网上找不到任何类似的情况)。 如果有可用的话我会尝试使用的方法,请告诉我。