DomainDataSource クラス
データ コレクションの読み込み、フィルター処理、グループ化、および並べ替えを行うためのオブジェクトを提供します。
名前空間: System.Windows.Controls
アセンブリ: System.Windows.Controls.DomainServices (system.windows.controls.domainservices.dll 内)
使用方法
'使用
Dim instance As DomainDataSource
構文
'宣言
<TemplateVisualStateAttribute(Name:="Changed", GroupName:="ChangeStates")> _
<TemplateVisualStateAttribute(Name:="Unchanged", GroupName:="ChangeStates")> _
<TemplateVisualStateAttribute(Name:="Normal", GroupName:="CommonStates")> _
<TemplateVisualStateAttribute(Name:="Disabled", GroupName:="CommonStates")> _
<TemplateVisualStateAttribute(Name:="Idle", GroupName:="ActivityStates")> _
<TemplateVisualStateAttribute(Name:="Loading", GroupName:="ActivityStates")> _
<TemplateVisualStateAttribute(Name:="Submitting", GroupName:="ActivityStates")> _
Public Class DomainDataSource
Inherits Control
[TemplateVisualStateAttribute(Name="Changed", GroupName="ChangeStates")]
[TemplateVisualStateAttribute(Name="Unchanged", GroupName="ChangeStates")]
[TemplateVisualStateAttribute(Name="Normal", GroupName="CommonStates")]
[TemplateVisualStateAttribute(Name="Disabled", GroupName="CommonStates")]
[TemplateVisualStateAttribute(Name="Idle", GroupName="ActivityStates")]
[TemplateVisualStateAttribute(Name="Loading", GroupName="ActivityStates")]
[TemplateVisualStateAttribute(Name="Submitting", GroupName="ActivityStates")]
public class DomainDataSource : Control
[TemplateVisualStateAttribute(Name=L"Changed", GroupName=L"ChangeStates")]
[TemplateVisualStateAttribute(Name=L"Unchanged", GroupName=L"ChangeStates")]
[TemplateVisualStateAttribute(Name=L"Normal", GroupName=L"CommonStates")]
[TemplateVisualStateAttribute(Name=L"Disabled", GroupName=L"CommonStates")]
[TemplateVisualStateAttribute(Name=L"Idle", GroupName=L"ActivityStates")]
[TemplateVisualStateAttribute(Name=L"Loading", GroupName=L"ActivityStates")]
[TemplateVisualStateAttribute(Name=L"Submitting", GroupName=L"ActivityStates")]
public ref class DomainDataSource : public Control
/** @attribute TemplateVisualStateAttribute(Name="Changed", GroupName="ChangeStates") */
/** @attribute TemplateVisualStateAttribute(Name="Unchanged", GroupName="ChangeStates") */
/** @attribute TemplateVisualStateAttribute(Name="Normal", GroupName="CommonStates") */
/** @attribute TemplateVisualStateAttribute(Name="Disabled", GroupName="CommonStates") */
/** @attribute TemplateVisualStateAttribute(Name="Idle", GroupName="ActivityStates") */
/** @attribute TemplateVisualStateAttribute(Name="Loading", GroupName="ActivityStates") */
/** @attribute TemplateVisualStateAttribute(Name="Submitting", GroupName="ActivityStates") */
public class DomainDataSource extends Control
TemplateVisualStateAttribute(Name="Changed", GroupName="ChangeStates")
TemplateVisualStateAttribute(Name="Unchanged", GroupName="ChangeStates")
TemplateVisualStateAttribute(Name="Normal", GroupName="CommonStates")
TemplateVisualStateAttribute(Name="Disabled", GroupName="CommonStates")
TemplateVisualStateAttribute(Name="Idle", GroupName="ActivityStates")
TemplateVisualStateAttribute(Name="Loading", GroupName="ActivityStates")
TemplateVisualStateAttribute(Name="Submitting", GroupName="ActivityStates")
public class DomainDataSource extends Control
例
次の例は、DomainDataSource を示したものです。これは、ProductDomainContext
という名前のドメイン コンテキストからデータを取得し、DataGrid コントロール内のデータを表示します。この例が機能するには、ドメイン サービス上に GetProducts()
というクエリ メソッドが存在している必要があります。DomainDataSource には、論理 AND ステートメントによって接続される 2 つのフィルター記述子が含まれています。一方のフィルターはユーザー入力に依存し、他方のフィルターは宣言構文で指定されます。
<Grid x:Name="LayoutRoot" Background="White">
<Grid.RowDefinitions>
<RowDefinition Height="25" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<riaControls:DomainDataSource Name="source" FilterOperator="And" QueryName="GetProducts" AutoLoad="true">
<riaControls:DomainDataSource.DomainContext>
<domain:ProductDomainContext />
</riaControls:DomainDataSource.DomainContext>
<riaControls:DomainDataSource.FilterDescriptors>
<riaControls:FilterDescriptor PropertyPath="Color" Operator="IsEqualTo" Value="Blue" />
<riaControls:FilterDescriptor PropertyPath="ListPrice" Operator="IsLessThanOrEqualTo" Value="{Binding ElementName=MaxPrice, Path=SelectedItem.Content}" />
</riaControls:DomainDataSource.FilterDescriptors>
</riaControls:DomainDataSource>
<ComboBox x:Name="MaxPrice" Grid.Row="0" Width="60" SelectedIndex="0">
<ComboBoxItem Content="100" />
<ComboBoxItem Content="500" />
<ComboBoxItem Content="1000" />
</ComboBox>
<data:DataGrid Grid.Row="1" ItemsSource="{Binding Data, ElementName=source}" />
</Grid>
解説
このコンポーネントを使用して、ユーザー インターフェイスと DomainContext のデータとの間のやり取りを単純化します。DomainContext と QueryName が指定されると、DomainDataSource はデータを読み込み、Data プロパティと DataView プロパティを通じて公開できるようになります。
詳細については、「DomainDataSource」を参照してください。
継承階層
System.Object
System.Windows.DependencyObject
System.Windows.UIElement
System.Windows.FrameworkElement
System.Windows.Controls.Control
System.Windows.Controls.DomainDataSource
スレッド セーフ
この型の public static (Visual Basic では Shared) メンバーは、スレッド セーフです。インスタンス メンバーの場合は、スレッド セーフであるとは限りません。
プラットフォーム
開発プラットフォーム
Windows XP Home Edition, Windows XP Professional, Windows Server 2003 、Windows Server 2008、および Windows 2000