0

Lightswitch 2011 のコア データ グリッド コントロールを最新の Telerik Silverlight RadGridView コントロールに置き換えました。

彼らのチュートリアルに従って、通常どおりグリッド列をバインドします。

ただし、コアの Lightswitch データグリッドでは、ChoiceList である文字列フィールドにバインドすると (たとえば、Project Status - Value = 1、DisplayName = "In Progress")、表示名が自動的に表示されます (たとえば、"IN Progress")。

しかし、Telerik RadGridView では、DisplayName ではなく VALUE が表示されます (上記の例では 1 など)。

XAML カスタマー コントロールで使用する DataMemberBinding 式を次に示します。

コアの Lightswitch DataGrid が何らかの形でクエリから取得していると思います - Binding ProjectStatus.DisplayName のようなものだと思いましたが、これは機能しません... (スクリーンショットを参照)

ここに画像の説明を入力

        <telerik:GridViewDataColumn  ShowColumnWhenGrouped="False"
                                     Width="SizeToHeader"
                                     CellStyle="{StaticResource FormLabelValueTextStyle}"
                                     DataMemberBinding="{Binding ProjectStatus}">
            <telerik:GridViewDataColumn.Header>
                <TextBlock Style="{StaticResource HeaderCellTextBlockStyle}"
                           Text="Project Status" />
            </telerik:GridViewDataColumn.Header>
        </telerik:GridViewDataColumn>

    </telerik:RadGridView.Columns>
</Controls:RadGridView>
4

1 に答える 1

0

選択リストは LightSwitch の概念であり、lsml ファイルに保存されます (私がそれらを使用しない理由の 1 つです)。

これを回避するには、選択リストの代わりに実際のルックアップテーブルを使用します。次に、エンティティのプロパティにバインドできます。

于 2012-08-01T22:36:04.983 に答える