我有一个WPF Datagrid绑定到一个DataSet;列是自动生成的。我需要将数字列向右对齐。我可以使用一个转换器,就像我在网上找到的这个例子:
<DataGrid x:Name="dg" ItemsSource="{Binding Source}" AutoGenerateColumns="False">
<DataGrid.Columns>
<DataGridTextColumn Binding="{Binding Col}" Header="Col" Width="200">
<DataGridTextColumn.ElementStyle>
<Style TargetType="TextBlock">
<Setter Property="TextBlock.HorizontalAlignment" Value="{Binding Col, Converter={StaticResource converter}}" />
</Style>
</DataGridTextColumn.ElementStyle>
</DataGridTextColumn>
</DataGrid.Columns>
</DataGrid>
但是在我的例子中,列是自动生成的,所以我不能使用
<DataGrid.Columns>
我不知道该怎么处理财产
<Setter Property="TextBlock.HorizontalAlignment" Value="{Binding Col, Converter={StaticResource converter}}" />
任何解决方案?
这可能不是一个理想的解决方案,但您可以尝试在生成每个列后,通过将处理程序挂接到AutoGeneratedColumns
事件,为它们设置ElementStyle。
这就是我所尝试的:
风格
<Style TargetType="TextBlock" x:Key="ColumnStyle">
<Setter Property="HorizontalAlignment" Value="{Binding Path=Text, RelativeSource={RelativeSource Self}, Converter={StaticResource AlignmentConverter}}" />
</Style>
数据网格的XAML
<DataGrid x:Name="dg"
ItemsSource="{Binding Items}"
AutoGenerateColumns="True"
AutoGeneratedColumns="Dg_OnAutoGeneratedColumns"
SelectionMode="Extended"/>
EventHandler代码(代码隐藏)
void Dg_OnAutoGeneratedColumns(object sender, EventArgs e)
{
foreach (var dataGridColumn in dg.Columns)
{
var textColumn = dataGridColumn as DataGridTextColumn;
if (textColumn == null) continue;
textColumn.ElementStyle = FindResource("ColumnStyle") as Style;
}
}
如果您不喜欢代码隐藏,则始终可以创建附加行为以实现相同的结果。
我有两个表A(id,col1,col2)和B(col3,col4,col5,col6) 这引发错误 为什么postgres不自动为列“id”生成值?如果我从表B中提供“id”,或者如果我插入单行(没有select)并为自动生成的列提供“default”关键字,查询就可以工作。 编辑:表创建查询
我正在尝试使用@ManyToOne和@OneToMany映射实体表。映射列位于名为“internal_plan_id”的子表中。根据要求,我不能更改名称。下面是两个实体表:父表 儿童桌: 我得到错误为:错误:关系“financial_plan_subplan”的列“internal_plan_id_internal_plan_id”不存在。 financial_subplan中用于映射的现有列名是
本文向大家介绍python列表生成式与列表生成器的使用,包括了python列表生成式与列表生成器的使用的使用技巧和注意事项,需要的朋友参考一下 列表生成式:会将所有的结果全部计算出来,把结果存放到内存中,如果列表中数据比较多,就会占用过多的内存空间,可能会导致MemoryError内存错误或者导致程序在运行时出现卡顿的情况 列表生成器:会创建一个列表生成器对象,不会一次性的把所有结果都计算出来,如
给定一个包含以下格式数据的大文件(V1,V2,…,VN) 我正在尝试使用Spark获得一个类似于下面的配对列表 我尝试了针对一个较旧的问题所提到的建议,但我遇到了一些问题。例如, 我得到了错误, 有人能告诉我哪些地方我可能做得不对,或者有什么更好的方法可以达到同样的效果?非常感谢。
我目前的Android应用程序采用Room/SQLite数据库 我的一个房间实体需要一个序列列,每次插入新行时该列都会递增。 我希望自动生成此序列,但是自动生成似乎仅适用于PrimaryKey 当Int列不是主键时,有没有办法在房间中自动递增?
当我们将一个对象作为键插入到一个映射中时,它的哈希代码就会生成。但如果我的密钥是对象列表,那么,它是列表中所有对象哈希代码的总和吗? 请帮助理解。