【问题标题】:Styling WPF Toolkit DataGrid Column Headers样式化 WPF 工具包 DataGrid 列标题
【发布时间】:2011-02-20 20:17:22
【问题描述】:

我在设置 WPF Datagrid 的样式时遇到问题,我设置了列标题(ColumnHeader 类型)的样式。

但是当列中的数据没有填满网格的整个宽度时,会添加一个额外的列来填充网格。该列忽略了 ColumnHeader 样式并且看起来不合适,大概是因为该元素具有不同的类型,我在对象浏览器中查看了库,但找不到该元素。我也考虑过修正尺寸,所以这个专栏是不必要的,但这不是一个可行的选择。

以下文章演示了该问题:http://blogs.msdn.com/jaimer/archive/2009/01/20/styling-microsoft-s-wpf-datagrid.aspx 我的意思是元素在右上角,就在绿色第 3 列的右侧,就在带有行背景箭头的单元格上方。

【问题讨论】:

    标签: wpf xaml datagrid wpftoolkit styling


    【解决方案1】:

    这似乎已在最新版本的网格中得到修复

    【讨论】:

      【解决方案2】:

      将最后一列的Width 设置为 * 以使该列填充剩余的可用空间。您的样式仍然适用,并且您不会留下填充列

          <toolkit:DataGrid>
              <toolkit:DataGrid.Resources>
                  <Style TargetType="{x:Type toolkit:DataGridColumnHeader}"  >
                      <Setter Property="Foreground" Value="Red" />
                  </Style>
              </toolkit:DataGrid.Resources>
      
              <toolkit:DataGrid.Columns>
                  <toolkit:DataGridTextColumn Header="1" />
                  <toolkit:DataGridTextColumn Header="2" Width="*" />
              </toolkit:DataGrid.Columns>
          </toolkit:DataGrid>
      

      【讨论】:

      • 感谢您的回复,恐怕在这种特殊情况下对我没有帮助。网格所在的 View 没有固定宽度,网格可以包含相当多的数据。
      猜你喜欢
      • 1970-01-01
      • 2016-01-03
      • 2010-10-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-03-30
      • 1970-01-01
      相关资源
      最近更新 更多