0

Silverlight 用の Telerik RadControls を使用しており、列に文字列のリストを描画する必要があります。列の cellStyle をスタイルにバインドし、そのスタイル内に ListCellPresenter コントロールのインスタンスを追加しました。私のコントロールは、依存関係プロパティ DataList を使用して内部データを受け取ります。ListCellPresenter でアクセスできるように、描画する必要がある実際のデータを GridView にバインドするにはどうすればよいですか?

<Grid x:Name="LayoutRoot">
    <telerik:RadGridView x:Name="gvMain" AutoGenerateColumns="True">
        <telerik:RadGridView.Columns>
            <telerik:GridViewDataColumn Width="200" CellStyle="{StaticResource listStyle}" Header="New Column">
            </telerik:GridViewDataColumn>
        </telerik:RadGridView.Columns>
    </telerik:RadGridView>
</Grid>

スタイルは次のとおりです。

<UserControl.Resources>
    <Style TargetType="grid:GridViewCell" x:Key="listStyle">
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="grid:GridViewCell">
                    <local:ListCellPresenter DataList="{Binding DataList}"></local:ListCellPresenter>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>
</UserControl.Resources>
4

1 に答える 1

1

それは簡単なはずDataMemberBindingです-バインドしたいリストを含む行オブジェクトのプロパティを指すために使用するだけです. すなわち:

<gridView:GridViewDataColumn 
    CellStyle="{StaticResource listStyle}" Header="New Column"  
    DataMemberBinding="{Binding TheListProperty}" /> 

ItemsSource(ここで、のがwhere contains your object のRadGridViewようなものであると仮定します。)IEnumerable<MyModel>MyModelList<string> TheListProperty

于 2012-11-21T10:01:12.220 に答える