【问题标题】:Property DataGrid.Cloumns is not found on DataGrid Error在 DataGrid 错误中找不到属性 DataGrid.Cloumns
【发布时间】:2013-12-06 03:54:58
【问题描述】:

我在 Visual Studio 2010 中的 C# 上使用 wpf。通过 sqlserver 创建 DataGrid 并想设置我的 c# 代码的 Header 的大小

private void Window_Loaded(object sender, RoutedEventArgs e)
        {
            SqlConnection con = new SqlConnection("Data Source=.\\SQLEXPRESS;AttachDbFilename=D:\\FUDA\\fuda.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True");
            SqlDataAdapter da = new SqlDataAdapter();
            con.Open();
            DataTable dt = new DataTable();
            da.SelectCommand = new SqlCommand("select * from user_ctrl",con);
            da.Fill(dt);
            dataGrid1.ItemsSource = dt.DefaultView;
        }

Xaml 代码是

<TabControl Height="311" HorizontalAlignment="Left" Name="tabControl1" VerticalAlignment="Top" Width="503">
            <TabItem Header="tabItem1" Name="tabItem1">
                <Grid>
                    <DataGrid Height="278" HorizontalAlignment="Left" Margin="1,1,0,0" Name="dataGrid1" VerticalAlignment="Top" Width="492" />
                </Grid>
            </TabItem>
        </TabControl>

上面的代码工作正常,但是每当我尝试在 xaml 中添加自定义大小到 Header 时,都会出现错误“在类型 'DataGrid' 中找不到可附加属性 'Columns'” 注意:我已经禁用“自动生成列”

  1. 为什么以及如何解决这个问题
  2. 还希望默认情况下按字母顺序排列属性窗口(如果 设置存在),在哪里以及如何?

【问题讨论】:

  • 您说您正在尝试添加 xaml 以对 Header 进行自定义大小调整。该代码在哪里?我没有看到你在 xaml 中对标头做任何事情。此外,您还没有在 xaml 中设置 AutoGenerateColumn,所以我假设您必须使用后面的代码。你能给我们更多的代码吗?与您遇到的问题相关的代码。
  • xaml 不接受以下粗体代码

标签: c# wpf visual-studio-2010 datagrid


【解决方案1】:

当我将它这样放在 xaml 中时,它对我有用:

    <TabControl Height="311" HorizontalAlignment="Left" Name="tabControl1" VerticalAlignment="Top" Width="503">
        <TabItem Header="tabItem1" Name="tabItem1">
            <Grid>
                <DataGrid Height="278" HorizontalAlignment="Left" Margin="1,1,0,0" Name="dataGrid1" VerticalAlignment="Top" Width="492">
                    <DataGrid.Columns>
                        <DataGridTextColumn Width="100" Header="Column 1" Binding="{Binding}" />
                        <DataGridTextColumn Width="100" Header="Column 2" Binding="{Binding}" />
                        <DataGridTextColumn Width="100" Header="Column 3" Binding="{Binding}" />
                    </DataGrid.Columns>
                </DataGrid>
            </Grid>
        </TabItem>
    </TabControl>

没有为我抛出任何错误...我希望这对您有所帮助:)

【讨论】:

    猜你喜欢
    • 2019-02-06
    • 2019-03-08
    • 2014-06-24
    • 1970-01-01
    • 2020-08-25
    • 1970-01-01
    • 2013-02-07
    • 2018-06-13
    • 2021-04-09
    相关资源
    最近更新 更多