C# WPF的DataGrid无法列标题居中,求解决 5C

工程代码
这个是我的实验代码,在我这个基础上修改,谢谢了,网上试了很多方法都没用

3个回答


<br> <Setter Property="HorizontalContentAlignment" Value="Center"><br> </Setter><br>

qq_25211827
Dream丶飞 你把工程上传,我下载好了就采纳
大约一年之前 回复
qq_25211827
Dream丶飞 昨天有项目忙,没上论坛
大约一年之前 回复
qq_25211827
Dream丶飞 没有文件啊
大约一年之前 回复

我把整个MainWindows.xaml的代码都发给你,你复制粘贴进去就好了。请给分。

 <Window x:Class="WpfApp2.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        xmlns:local="clr-namespace:WpfApp2"
        mc:Ignorable="d"
        Title="MainWindow" Height="450" Width="800">

    <Grid>
        <Grid.Resources>
            <Style x:Key="GeneralTextBlockStyle" TargetType="TextBlock">
                <Setter Property="FontSize" Value="12"/>
                <Setter Property="FontFamily" Value="Calibri"/>
                <Setter Property="Foreground" Value="Gray"/>
                <Setter Property="VerticalAlignment" Value="Center"/>
            </Style>
            <Style x:Key="HeaderTextBlock" TargetType="TextBlock" 
                   BasedOn="{StaticResource GeneralTextBlockStyle}">
                <Setter Property="FontWeight" Value="Bold"/>
                <Setter Property="Foreground" Value="Black"/>
                <Setter Property="Margin" Value="5,0"/>
            </Style>
            <DataTemplate x:Key="HeaderTemplateCenterAlign">
                <Border>
                    <TextBlock Style="{StaticResource HeaderTextBlock}" HorizontalAlignment="Center"
                               Text="{Binding Path=Content, RelativeSource={RelativeSource Mode=TemplatedParent}}"/>
                </Border>
            </DataTemplate>
            <Style x:Key="CellTextBlockCenterAlign" TargetType="{x:Type TextBlock}">
                <Setter Property="HorizontalAlignment" Value="Center"/>
                <Setter Property="VerticalAlignment" Value="Center"/>
                <Setter Property="Margin" Value="3,0"/>
            </Style>
        </Grid.Resources>
        <DataGrid HorizontalAlignment="Left" Height="338" VerticalAlignment="Top" Width="792" Background="White" FontWeight="Bold"
                  CanUserResizeColumns="False" CanUserReorderColumns="False" CanUserSortColumns="False">
            <DataGrid.Columns>
                <DataGridCheckBoxColumn Binding="{x:Null}" CanUserSort="False" ClipboardContentBinding="{x:Null}" Header="选择"
                                        HeaderTemplate="{StaticResource HeaderTemplateCenterAlign}" ElementStyle="{StaticResource CellTextBlockCenterAlign}"/>
                <DataGridTextColumn Binding="{x:Null}" CanUserSort="False" CanUserReorder="False" CanUserResize="False"
                                    ClipboardContentBinding="{x:Null}" FontWeight="Bold" Header="线束规格"  Width="100"
                                    HeaderTemplate="{StaticResource HeaderTemplateCenterAlign}" ElementStyle="{StaticResource CellTextBlockCenterAlign}"/>
                <DataGridTextColumn Binding="{x:Null}" CanUserSort="False" CanUserReorder="False" CanUserResize="False"
                                    ClipboardContentBinding="{x:Null}" Header="线长" Width="100"
                                    HeaderTemplate="{StaticResource HeaderTemplateCenterAlign}" ElementStyle="{StaticResource CellTextBlockCenterAlign}"/>
            </DataGrid.Columns>
            <DataGrid.ColumnHeaderStyle>
                <Style TargetType="{x:Type DataGridColumnHeader}">
                    <Setter Property="Template">
                        <Setter.Value>
                            <ControlTemplate TargetType="DataGridColumnHeader">
                                <Border Background="White" Height="25" 
                                        BorderBrush="LightGray" BorderThickness="0,1,1,1">
                                    <ContentPresenter />
                                </Border>
                            </ControlTemplate>
                        </Setter.Value>
                    </Setter>
                </Style>
            </DataGrid.ColumnHeaderStyle>
        </DataGrid>
    </Grid>
</Window>

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
WPF DataGrid 列标题 居中
网上找了很多资料,一直不能很好的解决 列标题居中问题。rn如果直接在ColumnHeaderStyle中设置HorizontalAlignment等于Centerrn虽然表面上已经居中,但是有问题:如图:rn[img=https://img-bbs.csdn.net/upload/201505/08/1431049991_263585.png][/img]rnrn如果通过DataTemplate rn设置HorizontalAlignment没有用。rn通过Margin倒是有用,但是如果大小改变就又麻烦了。rnrn请教诸位怎么破?rnrn谢谢啦。
新手问题,关于WPF的DataGrid控件列标题居中问题!
内容居中已经解决但是标题居中查过一些资料无果!网上有silverlight 4的DataGrid居中解决方案,但用在WPF中无效。请问大虾们有没有好方法!
WPF 如何让DataGrid中的列标题居中
-
如何让DataGrid的列标题居中?
DataGrid的每个列标题都是靠左的,不太好看如何让他们居中?
如何使DATAGRID中的列标题居中?
请位大侠指教
请教datagrid列标题怎么居中?
刚用datagrid,请教各位datagrid中的列标题怎么居中,rn另外,是否有人遇到过从读sql数据库中的datetime时间格式的值添加到winform的datagrid中时,时间不能显示,如当sql数据库中一个datetime值为2004-8-10 12:23:20,显示在winform中只有2004-8-10,时间显示不出来,请问谁遇到过同样的问题,帮帮忙。
怎样设置DATAGRID列标题居中?
rnWINFORM.rnrnDATAGRID有TABLESTYLE。rn那设列标题文字的居中显示,是在TABLESTYPLE中设置么?是设置整个TABLESTYLE还是设具体某列DataGridTextBoxColumn的属性?(它有HeaderText 属性,但没对齐属性)rn我在两者里都没找到可直接设定的地方。rn请具体指点,谢谢!!!
DataGrid中的列标题能居中吗?
-
DataGrid中的列标题如何居中
在DataGrid中的列标题居中如何实现
怎样设置datagrid的标题列居中?
怎样设置datagrid的标题列居中?
DataGridView列标题居中
改变行的高度; 每个单元格中的内容居中显示;设置标题内容居中显示;
DataGrid标题居中问题
winform上绑定一个datagrid显示一个表格,怎么样让表的每一列的标题文字能够居中?
DataGrid控件标题居中
在控件属性页里有,设置选项,但设置完毕后,运行程序,就不显示数据了
WPF,DataGrid的列标题没有了分割线
rn rnrnrn[img=https://img-bbs.csdn.net/upload/201309/04/1378287635_280397.jpg][/img]rnrn设置了DataGrid的列头的样式,设置了Background的颜色,这一设置不打紧,列头之间的分割线没有了。rn请问,如何设置列头之间的分割线的颜色,找遍了都没找到设置这个的属性
WPF,DataGrid如何不滚动列标题
在WPF中,在拉动DataGrid的滚动条的时候,如何让列标题不跟着滚动呢,就像EXCEL冻结行那样
wpf datagrid 列名修改 列标题修改
第一次接触到wpf时,使用datatable想要把数据显示到datagrid上面,代码如下: string conSqlS = &quot;Select * from mapsize&quot;; DataTable dt = new DataTable(); mysql.GetAdapter(conSqlS).Fill(dt); dataGr...
从Datagrid的标题居中说起
从Datagrid的标题居中说起
DataGrid自定义列标题
DataGrid自定义列标题 DataGrid自定义列标题 DataGrid自定义列标题 DataGrid自定义列标题 DataGrid自定义列标题
datagrid列标题
请问这要来动态改变datagrid当中的列标题呢??????????????
datagrid的列标题居中显示
请教各位,小弟用vc#.net开发asp.net项目。我想让datagrid的列标题居中显示,如果在属性中很好设置。rn但是datagrid的列是动态生成的,我需要用代码写这个属性,发生一些错误。rn请高人指点迷津,谢谢!rnrn代码如下rnrncolumn2.HeaderStyle.HorizontalAlign="Center";rnrnrn错误如下rn 无法将类型“string”隐式转换为“System.Web.UI.WebControls.HorizontalAlign”rnrn
DataGrid标题列的问题?
如何在代码里将DataGrid的列标题改为中文?rn问题解决,连数据库版块的帖一起结,共计60分。rn
datagrid定制列标题
我得数据库表的列名称是英文命名,我如何在窗体上自定义该列名称?
关于datagrid的列标题?
列标题默认是表的列名,该如何改变?rn如何不显示datagrid的caption?rn我改变了datagrid属性页中的column页的内容,rndatagrid则不能正常显示数据了,如何恢复?rnrnrn请教高手赐教。
DataGrid 列标题
请问一下,我用代码绑定数据表到datagird里显示,但是我想在显示数据的时候改变datagrid第一列的标题,代码该如何实现?急,请大家帮帮忙,谢谢!
WPF datagrid计算列
我现在有这样一张表rnArna1 a2 a3rnrn现在像绑定到datagrid上去,显示为rna1 a2 a3 a2+a3rnrn我本来像创建一个这样的视图,然后查询视图在来绑定,但这样我在做修改的时候就要把选中的行重新转换成A这个类rnrn有没有不用视图的方法来做
WPF的DataGrid动态生成列
在后台直接创建每一列,并bind 在XMAL的WIndow中,定义一个x:Nam ="dataShow"的DataGrid控件 后台,在Load事件中,可以这样写 dataPage.dataShow.Columns.Clear();//每次清空列集合 string tempStr = String.Empty ; for ...
wpf之datagrid 序号列
方法一:在datagrid最前面添加序列号 窗体加载时: private void MdiChild_Loaded(object sender, RoutedEventArgs e) { dgData.LoadingRow += new EventHandler(dataGrid_LoadingRow); dgData.Unl
wpf DataGrid列排序
为什么我在后台设置DataGrid的列排序(升序、降序)属性,前台没有变化呢?(有哪位高手帮帮忙)
WPF DataGrid 隐藏列
我用了一个DataGrid绑定了一个数据源,里面加了一个自定义列是ProgressBar 类型的我想当ProgressBar的value不是0的时候显示该列否则隐藏该列该怎么做啊,请高手指点
DataGrid,如何让列标题居中对齐,内容右对齐
如题
如何使datagrid中的列标题居中阿???
有人说是属性itemstyle,headstylern但是我怎么找不到阿???rn
如何在VB.NET的WINFORM中让DATAGRID的列标题居中?
想了又想,还是不知道?
在DataGrid中怎么将列标题设置为居中?
谢谢!
WPF中datagrid后台绑定chekbox模板列居中的问题。
WPF中datagrid后台在AutoGeneratingColumn事件里绑定模板列chekbox控件居中不知道怎么解决
c# groupBox 带标题边框,标题居中
private void groupBox1_Paint(object sender, PaintEventArgs e)        {            //e.Graphics.Clear(Color.Transparent);                        //SizeF fontSize = e.Graphics.MeasureString(groupBox1.Te...
WPF,VS中不能编辑DataGrid列标题的模板吗?
拖了一个DataGrid控件到窗口,然后定义了列,鼠标右击DataGrid控件,编辑模板....右键、右键、再右键.....怎找不到编辑列标题的模板的选项呢?rnrn如何编辑列标题的模板呢?我要编辑一个复合表头
请教wpf datagrid 单击列标题排序问题
[size=18px][b]wpf的datagrid中rn如果该列的内容是中文的话。。当点击列标题时,就会排序出错! 请问有方法解决吗?[/b][/size]
WPF,DataGrid如何设置列标题分割线的颜色
如题..................rn[img=https://img-bbs.csdn.net/upload/201309/04/1378303340_251575.jpg][/img]rnrn如何设置Name和Age之间分割线的颜色
如何获得datagrid的列标题?
同标题
关于datagrid列标题的问题?
readDB.OpenOutDB(ref OutDB);rndataGrid.SetDataBinding(OutDB,"Out"); rndataGrid.DataSource=OutDB.Tables["Out"];rndataGrid.ReadOnly=true;rn rnDataGridColumnStyle dgCol;rndgCol = dataGrid.TableStyles["Out"].GridColumnStyles[0];rndgCol.HeaderText = "hello";rnrn就这么简单,但就报错:未将对象设置到对象事例。rnrn请大家多费心了,拜托各位大侠了。
相关热词 c# stream 复制 android c# c#监测窗口句柄 c# md5 引用 c# 判断tabtip 自己写个浏览器程序c# c# 字符串变成整数数组 c#语言编程写出一个方法 c# 转盘抽奖 c#选中treeview