WPF中DataGrid在没有数据的时候也可以显示水平滚动条
程序员文章站
2022-05-07 11:41:43
今天做项目中遇到个问题,就是页面加载后默认DataGrid是不加载数据的,但是DataGrid的列很多,就导致了运行效果上,此窗口的DataGrid没有水平滚动条,类似图片的效果。 经过百度和摸索,使用下面的方法,可以实现在没有数据的时候也可以显示水平滚动条。 Xaml中添加一句话 另外就是Data ......
今天做项目中遇到个问题,就是页面加载后默认datagrid是不加载数据的,但是datagrid的列很多,就导致了运行效果上,此窗口的datagrid没有水平滚动条,类似图片的效果。
经过百度和摸索,使用下面的方法,可以实现在没有数据的时候也可以显示水平滚动条。
xaml中添加一句话
<datagrid x:name="datagrid1" horizontalalignment="stretch" height="324" verticalalignment="top" width="772">
<columndefinition width="500"></columndefinition><!--这里设置宽度,即可出现滚动条-->
<datagrid.columns>
<datagridtextcolumn header="列名一" width="180" ></datagridtextcolumn>
<datagridtextcolumn header="列名二列名二列名二" width="180" />
<datagridtextcolumn header="列名三列名三列名三列名三" width="180" />
<datagridtextcolumn header="列名四列名四" width="180" />
<datagridtextcolumn header="列名五列名五列名五列名五" width="180" ></datagridtextcolumn>
<datagridtextcolumn header="列名六列名六列名六" width="180" ></datagridtextcolumn>
<datagridtextcolumn header="列名七列名七列名七列名七" width="180" />
<datagridtextcolumn header="列名八列名八列名八列名八列名八" width="110" />
</datagrid.columns>
</datagrid>
另外就是datagrid不要放在stackpanel中,stackpanel在垂直和水平方向会无限放大,从而不会出现滚动条。
最终效果如下: