Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/291.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# ADO.NET数据网格字符串绑定_C#_Wpf_Data Binding_Collections_Datagrid - Fatal编程技术网

C# ADO.NET数据网格字符串绑定

C# ADO.NET数据网格字符串绑定,c#,wpf,data-binding,collections,datagrid,C#,Wpf,Data Binding,Collections,Datagrid,我有一个Datagrid,在启动时我设置了它的列集,然后我将它绑定到一个列表>,以便用数据填充它。每个嵌套列表的项数与我得到的列数相同,但是。。。我没有看到任何东西。。。将2D集合绑定到DataGrid的正确做法是什么 代码示例 List<List<String>> rows = SomeFunctionThatReturnsTheRows(); this.grid.ItemsSource = rows; List rows=somefunction返回行(); thi

我有一个Datagrid,在启动时我设置了它的列集,然后我将它绑定到一个列表>,以便用数据填充它。每个嵌套列表的项数与我得到的列数相同,但是。。。我没有看到任何东西。。。将2D集合绑定到DataGrid的正确做法是什么

代码示例

List<List<String>> rows = SomeFunctionThatReturnsTheRows();
this.grid.ItemsSource = rows;
List rows=somefunction返回行();
this.grid.ItemsSource=行;
谢谢,,
Miloud B.

您需要在google上搜索的是绑定到嵌套集合,而不是2D集合-这样您将获得更多结果:)


回答您的问题了吗?

您需要搜索的是绑定到嵌套集合,而不是2D集合-这样您会得到更多结果:)

回答你的问题了吗?

试试这个

DataContext = new List<List<string>>()
  {
      new List<string>() {"List1-1", "List1-2", "List1-3"},
      new List<string>() {"List2-1", "List2-2", "List2-3"}
  };

<ListView ItemsSource="{Binding}">
  <ListView.View>
    <GridView>
      <GridView.Columns>
        <GridViewColumn DisplayMemberBinding="{Binding .[0]}" /> 
        <GridViewColumn DisplayMemberBinding="{Binding .[1]}" /> 
        <GridViewColumn DisplayMemberBinding="{Binding .[2]}" /> 
      </GridView.Columns>
    </GridView>
  </ListView.View>
</ListView>
DataContext=newlist()
{
新列表(){“List1-1”、“List1-2”、“List1-3”},
新列表(){“List2-1”、“List2-2”、“List2-3”}
};
产生这个

试试这个

DataContext = new List<List<string>>()
  {
      new List<string>() {"List1-1", "List1-2", "List1-3"},
      new List<string>() {"List2-1", "List2-2", "List2-3"}
  };

<ListView ItemsSource="{Binding}">
  <ListView.View>
    <GridView>
      <GridView.Columns>
        <GridViewColumn DisplayMemberBinding="{Binding .[0]}" /> 
        <GridViewColumn DisplayMemberBinding="{Binding .[1]}" /> 
        <GridViewColumn DisplayMemberBinding="{Binding .[2]}" /> 
      </GridView.Columns>
    </GridView>
  </ListView.View>
</ListView>
DataContext=newlist()
{
新列表(){“List1-1”、“List1-2”、“List1-3”},
新列表(){“List2-1”、“List2-2”、“List2-3”}
};
产生这个

那这个怎么样

var rows = new List<List<string>>()
      {
          new List<string>() {"List1-1", "List1-2", "List1-3"},
          new List<string>() {"List2-1", "List2-2", "List2-3"}
      };
GridView gv = new GridView();
this.grid.View = gv;
gv.Columns.Add(new GridViewColumn(){DisplayMemberBinding = new Binding(".[0]")});
gv.Columns.Add(new GridViewColumn(){DisplayMemberBinding = new Binding(".[1]")});
gv.Columns.Add(new GridViewColumn(){DisplayMemberBinding = new Binding(".[2]")});
this.grid.ItemsSource = rows;
var行=新列表()
{
新列表(){“List1-1”、“List1-2”、“List1-3”},
新列表(){“List2-1”、“List2-2”、“List2-3”}
};
GridView gv=新的GridView();
this.grid.View=gv;
添加(新GridViewColumn(){DisplayMemberBinding=新绑定(“[0]”)});
添加(新GridViewColumn(){DisplayMemberBinding=新绑定(“[1]”)});
添加(新GridViewColumn(){DisplayMemberBinding=新绑定(“[2]”)});
this.grid.ItemsSource=行;
那么这个怎么样

var rows = new List<List<string>>()
      {
          new List<string>() {"List1-1", "List1-2", "List1-3"},
          new List<string>() {"List2-1", "List2-2", "List2-3"}
      };
GridView gv = new GridView();
this.grid.View = gv;
gv.Columns.Add(new GridViewColumn(){DisplayMemberBinding = new Binding(".[0]")});
gv.Columns.Add(new GridViewColumn(){DisplayMemberBinding = new Binding(".[1]")});
gv.Columns.Add(new GridViewColumn(){DisplayMemberBinding = new Binding(".[2]")});
this.grid.ItemsSource = rows;
var行=新列表()
{
新列表(){“List1-1”、“List1-2”、“List1-3”},
新列表(){“List2-1”、“List2-2”、“List2-3”}
};
GridView gv=新的GridView();
this.grid.View=gv;
添加(新GridViewColumn(){DisplayMemberBinding=新绑定(“[0]”)});
添加(新GridViewColumn(){DisplayMemberBinding=新绑定(“[1]”)});
添加(新GridViewColumn(){DisplayMemberBinding=新绑定(“[2]”)});
this.grid.ItemsSource=行;

谢谢,迪恩。只有一个想法,我必须以编程方式绑定,我不能在我的上下文中编辑我的xaml。谢谢Dean。只有一个想法,我必须以编程方式绑定,我不能在我的上下文中编辑我的xaml。谢谢Matt。虽然,它并没有真正回答这个问题:p。问题是我不能编辑我的XAML,我必须找到一个100%的编程解决方案。谢谢Matt。虽然,它并没有真正回答这个问题:p。问题是我不能编辑我的XAML,我必须找到一个100%的编程解决方案。你把它搞坏了谢谢dean!我将此应用于DataGridView,它可以正常工作!但只有一个问题:grid.ItemsSource=rows会导致绑定两个后续列:Capacity和Count,它们是从列表中绑定的。。。如何排除它们?您需要关闭AutoGenerateColumns,并通过编程创建列,这样您就可以了!非常感谢你今天教了我很多;)你把它撞倒了谢谢你,迪恩!我将此应用于DataGridView,它可以正常工作!但只有一个问题:grid.ItemsSource=rows会导致绑定两个后续列:Capacity和Count,它们是从列表中绑定的。。。如何排除它们?您需要关闭AutoGenerateColumns,并通过编程创建列,这样您就可以了!非常感谢你今天教了我很多;)