jjzjj

datagrid

全部标签

c# - WPF Datagrid 绑定(bind)和列显示

我有数据表作为DataGrid的项目源,这个数据表有很多列。是否可以在不创建新表的情况下显示几列而不是所有列? 最佳答案 是的,是的。只需标记AutoGenerateColumns=False并手动定义您的列。您可以使用普通的文本绑定(bind)列、复选框列、自定义XAML模板列等,如您在documentation中所见. 关于c#-WPFDatagrid绑定(bind)和列显示,我们在StackOverflow上找到一个类似的问题: https://stac

c# - WPF Datagrid 列格式编号以包含逗号

我认为这会相当简单,而且可能是这样,但我在谷歌上找不到任何东西。我有一个WPF应用程序,其数据网格绑定(bind)到我的对象,该对象包含bool、string和int类型的属性。显示int的地方我想显示30,000而不是30000。这是如何实现的?任何帮助都会很棒,谢谢,中号 最佳答案 您正在寻找StringFormat或 关于c#-WPFDatagrid列格式编号以包含逗号,我们在StackOverflow上找到一个类似的问题: https://stacko

c# - 当 AutoGenerateColumns = True 时如何重命名 DataGrid 列?

我有一个简单的数据结构类:publicclassClient{publicStringname{set;get;}publicStringclaim_number{set;get;}}我将其输入DataGrid:this.data_grid_clients.ItemSource=this.clients;我想更改列标题。即:claim_number到“claim编号”。我知道这可以在您通过执行以下操作手动创建列时完成:this.data_grid_clients.Columns[0].Header="ClaimNumber"但是,Columns属性在自动生成列时为空。有没有办法重命名列

c# - 当弹出窗口中的数据网格捕获鼠标时,wpf 弹出窗口不会自动关闭

我有一个带有StaysOpen=False的弹出窗口,所以我想通过单击弹出窗口之外的任意位置来关闭它。在弹出窗口中,我有一个DataGrid。如果我打开弹出窗口然后单击其他地方,弹出窗口将关闭。但如果在弹出窗口外单击之前我将单击DataGrid中的列标题,则不会发生这种情况。测试XAML:Open我认为这是因为列标题在单击时捕获鼠标并且弹出窗口不再接收鼠标事件。我试图在LostMouseCapture事件上添加一个处理程序,以便通过弹出窗口捕获鼠标,但它似乎并不那么容易工作。有什么想法吗? 最佳答案 也许它会有所帮助。附加行为:pu

c# - 如何在代码中定义 DataTemplate?

如何在代码中创建一个DataTemplate(使用C#),然后向该DataTemplate添加一个控件?我正在使用Sivlerlight。 最佳答案 据我所知,在Silverlight中创建DataTemplate的唯一方法是使用XamlReader.基本上,您只需将XAML作为字符串传递给它,它就会返回一个DataTemplate。Byron的解决方案适用于WPF,但Silverlight(据我所知)不支持FrameworkElementFactory。ScottMorrison:DefiningSilverlightDataGr

c# - 为什么双击滚动条时会触发 DataGrid MouseDoubleClick 事件?

为什么当我双击滚动条或标题时会触发DataGridMouseDoubleClick事件?有什么办法可以避免这种情况并仅当我在数据网格内双击时才触发事件。 最佳答案 滚动条和标题是网格的一部分,但不处理双击,因此事件“冒泡”到网格。不雅的解决方案是通过事件源或鼠标坐标来找出“点击了什么”。但你也可以做类似的事情(未经测试): 关于c#-为什么双击滚动条时会触发DataGridMouseDoubleClick事件?,我们在StackOverflow上找到一个类似的问题:

c# - 如何在 WPF 中设置 DataGrid header 的样式

我有一个像这样的DataGrid:如何使DataGridHeader居中?并为其应用样式?谢谢编辑1):写完这段代码后:网格列变为:为什么? 最佳答案 要避免标题折叠的影响,只需以这种方式更正您的样式: 关于c#-如何在WPF中设置DataGridheader的样式,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/7943729/

c# - 按下箭头键时不触发文本框 Keydown 事件

我有一个数据网格,其中一列作为DataGridTemplateColumn,如下所示:当单元格值发生变化时,我想将一些项目填充到ListView中,TextChanged事件如下:privatevoidtxtbxProduct_TextChanged(objectsender,TextChangedEventArgse){TextBoxtb=(TextBox)sender;if(tb.Text.Trim()!=""){stringqry="selectPL.Record_IdasPList_Id,PM.Record_IdasProduct_Id,PM.Product_Code,PM.P

c# - 如何从 Windows 窗体应用程序的 DataGrid 中的选定行获取值?

标题是不言自明的。我有一个用于Windows窗体应用程序的DataGrid,我希望能够存储选定行的值。执行此操作最简单的方法是什么?我在搜索中找到了这段代码作为示例,但当DataGrid排序不同时不起作用:privatevoidgrdPatients_CurrentCellChanged(objectsender,EventArgse){introw=grdPatients.CurrentRowIndex;grdPatients.Select(row);ArrayListarrayList=newArrayList();for(inti=0;i 最佳答案

c# - 每个列的 WPF DataGrid CustomSort

我有一个绑定(bind)到封装ObservableCollection的CollectionViewSource的WPFDataGrid。这个CollectionViewSource有两个主要目标:1)按T的特定属性对每个项目进行分组。我在GroupDescription中使用ValueConverter来获得我想要的分组行为。2)按a)主要是组名称(如上定义)和b)各个组项目对网格进行排序。我通过将自定义IComparer附加到CollectionViewSource的“CustomSort”属性来实现这一点。这在大多数情况下效果很好,但是一旦单击列标题,排序逻辑就会被覆盖。我不想禁