我有窗口。 Window.DataContext = DataRow。
我有TextBlock。
我需要将DataRow.Array [0]绑定到TextBlock的Text属性。
我该怎么做?
编辑:
<Window x:Class="Client.payment.CheckMore"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:wpf="http://schemas.microsoft.com/wpf/2008/toolkit" Loaded="Window_Loaded" x:Name="p_this">
<DockPanel>
<TextBlock x:Name="p_idCheck" Text="{Binding Path=Array[0]}"/>
</DockPanel>
</Window>
代码中的:this.DataContext = dateRow.Rows [0];
答案 0 :(得分:5)
您正在寻找的房产可能是ItemArray。您可以像这样绑定它,以下方法将给您相同的结果(如果第一列名为Column1)。
Xaml
<StackPanel>
<TextBlock x:Name="p_idCheck"
Text="{Binding Path=ItemArray[0]}"/>
<TextBlock x:Name="p_idCheck2"
Text="{Binding Path=[0]}"/>
<TextBlock x:Name="p_idCheck3"
Text="{Binding Path=[Column1]}"/>
</StackPanel>
示例背后的代码
private DataSet m_dataSet = null;
public MainWindow()
{
InitializeComponent();
m_dataSet = new DataSet();
DataTable dataTable1 = new DataTable("Table1");
dataTable1.Columns.Add("Column1", typeof(string));
m_dataSet.Tables.Add(dataTable1);
DataRow dataRow1 = dataTable1.NewRow();
dataRow1["Column1"] = "Column1Value";
dataTable1.Rows.Add(dataRow1);
this.DataContext = dataRow1;
}
答案 1 :(得分:0)
<TextBlock Text = "{Binding Array[0]}" ...
如果Array
是公共财产,则正常工作。