欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

WPF中DataGrid在没有数据的时候也可以显示水平滚动条

程序员文章站 2022-05-07 11:41:43
今天做项目中遇到个问题,就是页面加载后默认DataGrid是不加载数据的,但是DataGrid的列很多,就导致了运行效果上,此窗口的DataGrid没有水平滚动条,类似图片的效果。 经过百度和摸索,使用下面的方法,可以实现在没有数据的时候也可以显示水平滚动条。 Xaml中添加一句话 另外就是Data ......

今天做项目中遇到个问题,就是页面加载后默认datagrid是不加载数据的,但是datagrid的列很多,就导致了运行效果上,此窗口的datagrid没有水平滚动条,类似图片的效果。

WPF中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在垂直和水平方向会无限放大,从而不会出现滚动条。

最终效果如下:

 WPF中DataGrid在没有数据的时候也可以显示水平滚动条