Datagrid中的WPF按钮缩小或消失

时间:2018-09-15 19:35:53

标签: wpf datagrid

我的数据网格有一个小问题。我不希望用户能够向数据网格添加行。但是,当我将CanUsersAddRows=True设置为Buttons时,由于某些原因,数据网格中的三个 <DataGrid x:Name="taskGrid" AutoGenerateColumns="False" Background="{DynamicResource MaterialDesignBackground}" Foreground="#FF000000" IsReadOnly="False" ItemsSource="{Binding Times}" CanUserAddRows="True" SelectedItem="{Binding SelectedTime}" VerticalScrollBarVisibility="Auto"> <DataGrid.Columns> <DataGridTextColumn Width="0.25*" Binding="{Binding Mitarbeiter}" Header="Mitarbeiter" /> <!--StringFormat='HH:mm:ss',--> <DataGridTextColumn Width="0.25*" Binding="{Binding startTime, ConverterCulture={x:Static gl:CultureInfo.CurrentCulture}}" Header="Startzeit" /> <DataGridTextColumn Width="0.25*" Binding="{Binding endTime, ConverterCulture={x:Static gl:CultureInfo.CurrentCulture}}" Header="Endzeit" /> <DataGridCheckBoxColumn Width="0.25*" Binding="{Binding Nachgetragen}" Header="Nachgetragen" /> <DataGridTemplateColumn> <DataGridTemplateColumn.CellTemplate> <DataTemplate> <Button x:Name="btnOpenDetails" Background="{DynamicResource MaterialDesignBackground}" BorderThickness="0" Click="btnOpenDetails_Click" Foreground="#FF000000" Tag="{Binding AuftragID}"> Details </Button> </DataTemplate> </DataGridTemplateColumn.CellTemplate> </DataGridTemplateColumn> <DataGridTemplateColumn> <DataGridTemplateColumn.CellTemplate> <DataTemplate> <Button x:Name="btnChangeTaskNumber" Background="{DynamicResource MaterialDesignBackground}" BorderThickness="0" Click="btnChangeTaskNumber_Click" Foreground="#FF000000" IsEnabled="True" Tag="{Binding ID}"> Auftragsnummer ändern </Button> </DataTemplate> </DataGridTemplateColumn.CellTemplate> </DataGridTemplateColumn> <DataGridTemplateColumn> <DataGridTemplateColumn.CellTemplate> <DataTemplate> <Button x:Name="btnDeleteEntry" Background="{DynamicResource MaterialDesignBackground}" BorderThickness="0" Click="btnDeleteEntry_Click" Foreground="#FF000000" Tag="{Binding AuftragID}"> Löschen </Button> </DataTemplate> </DataGridTemplateColumn.CellTemplate> </DataGridTemplateColumn> </DataGrid.Columns> </DataGrid> 会缩小,并且实际上是不可见的。那是错误还是我犯错了?

这是我的数据网格代码:

CanUsersAddRows=True

下图显示了在datagrid控件中设置属性CanUsersAddRows=False时的示例(请注意右侧的三个按钮):

下一张图片显示了相同的内容,但是这次是getElementById

enter image description here

如您所见,按钮有点消失了。到底是怎么回事。我需要更改什么?

谢谢!

1 个答案:

答案 0 :(得分:0)

我设法解决了这个问题。我给<DataGridTemplateColumn>列设置了宽度。这解决了问题。但是我仍然不明白为什么CanUsersAddRows=False时它会起作用。一个更好的答案将不胜感激!