![](/img/trans.png)
[英]Binding ComboBox ItemsSource in DataGrid RowDetailsTemplate
[英]DataGrid RowDetailsTemplate binding looks in main Data Context
明顯的東西,但是我被困在這里。
我想在DataGrid中顯示DataGrid,這是XAML:
<sdk:DataGrid
ItemsSource="{Binding RNPPayPlanLanes}"
RowDetailsVisibilityMode="Visible">
<sdk:DataGrid.Columns>
<sdk:DataGridTextColumn Header="From region" Binding="{Binding FromRegionKey, Mode=TwoWay}" />
<sdk:DataGridTextColumn Header="To region" Binding="{Binding ToRegionKey, Mode=TwoWay}" />
</sdk:DataGrid.Columns>
<sdk:DataGrid.RowDetailsTemplate>
<DataTemplate>
<sdk:DataGrid
HorizontalAlignment="Right"
ItemsSource="{Binding RNPPayPlanLaneDistances}">
<sdk:DataGrid.Columns>
<sdk:DataGridTextColumn Header="UpToDistance" Binding="{Binding UpToDistance, Mode=TwoWay}" />
<sdk:DataGridTextColumn Header="PayPerDistanceUnitAmount" Binding="{Binding PayPerDistanceUnitAmount, Mode=TwoWay}" />
</sdk:DataGrid.Columns>
</sdk:DataGrid>
</DataTemplate>
</sdk:DataGrid.RowDetailsTemplate>
</sdk:DataGrid>
MyViewModel包含RNPPayPlanLane
對象的集合,我看到它們已正確綁定。
VM的偽代碼:
class MyViewModel
{
public List<RNPPayPlanLane> RNPPayPlanLanes { get; set; }
}
class RNPPayPlanLane
{
public List<RNPPayPlanLaneDistance> RNPPayPlanLaneDistances { get; set; }
}
class RNPPayPlanLaneDistance {}
RNPPayPlanLane
具有集合屬性“ RNPPayPlanLaneDistances”,我正嘗試將其用於嵌套網格。 這行不通。 我得到錯誤:
System.Windows.Data錯誤:BindingExpression路徑錯誤:在“ MyViewModel”上找不到“ RNPPayPlanLaneDistances”屬性
因此,它沒有綁定到“當前項目”,而是試圖綁定到我的主DataContext。 為什么? 我該怎么辦?
我使用telerik的分層網格。 我需要定義一個層次結構,沒有使用RowDetailsTemplate,但是您的錯誤表明該屬性丟失了,
我認為
每個LanesData都有一個RNPPayPlanLane 1-1
每個RNPPayPlanLane具有許多RNPPayPlanLaneDistances 1-N(主從細節)
好像應該是這樣
ItemsSource="{Binding RNPPayPlanLane.RNPPayPlanLaneDistances}">
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.