다음을 통해 공유


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의 데이터 간의 상호 작용을 단순화합니다. DomainContextQueryName을 지정하면 DomainDataSource에서 데이터를 로드하여 DataDataView 속성을 통해 이를 노출할 수 있습니다.

자세한 내용은 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

대상 플랫폼

Change History

참고 항목

참조

DomainDataSource 멤버
System.Windows.Controls 네임스페이스