DomainDataSource 클래스
데이터 컬렉션을 로드, 필터링, 그룹화 및 정렬하기 위한 개체를 제공합니다.
네임스페이스: System.Windows.Controls
어셈블리: system.windows.controls.domainservices.dll의 System.Windows.Controls.DomainServices
사용법
‘사용 방법
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
예제
다음 예제에서는 ProductDomainContext
라는 도메인 컨텍스트에서 데이터를 검색하고 DataGrid 컨트롤에 데이터를 표시하는 DomainDataSource를 보여 줍니다. 예제가 작동하려면 GetProducts()
라는 쿼리 메서드가 도메인 서비스에 있어야 합니다. DomainDataSource에는 논리 AND 문으로 연결되는 두 개의 필터 설명자가 포함됩니다. 필터 한 개는 사용자 입력에 따라 달라지고 나머지 필터는 선언 구문에 지정됩니다.
<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