Dreamine.UI.Wpf 1.0.1
Dreamine.UI.Wpf 사용자 인터페이스 기능과 구성 요소를 제공합니다.
로딩중...
검색중...
일치하는것 없음
Dreamine.UI.Wpf.Behaviors.DataGridBehaviors 클래스 참조

더 자세히 ...

정적 Public 멤버 함수

static bool GetEnableClickToDeselect (DependencyObject obj)
static void SetEnableClickToDeselect (DependencyObject obj, bool value)

정적 Public 속성

static readonly DependencyProperty EnableClickToDeselectProperty

정적 Private 멤버 함수

static void OnEnableClickToDeselectChanged (DependencyObject d, DependencyPropertyChangedEventArgs e)
static void OnPreviewMouseLeftButtonDown (object sender, MouseButtonEventArgs e)

상세한 설명

DataGrid에 적용할 수 있는 연결 속성과 동작을 제공합니다.

DataGridBehaviors.cs 파일의 16 번째 라인에서 정의되었습니다.

멤버 함수 문서화

◆ GetEnableClickToDeselect()

bool Dreamine.UI.Wpf.Behaviors.DataGridBehaviors.GetEnableClickToDeselect ( DependencyObject obj)
inlinestatic

클릭하여 선택 해제하는 기능의 활성화 여부를 가져옵니다.

매개변수
obj값을 읽을 종속성 개체입니다.
반환값
기능이 활성화되어 있으면 true입니다.
예외
ArgumentNullExceptionobjnull인 경우 발생합니다.

DataGridBehaviors.cs 파일의 65 번째 라인에서 정의되었습니다.

66 => (bool)obj.GetValue(EnableClickToDeselectProperty);

다음을 참조함 : EnableClickToDeselectProperty.

◆ OnEnableClickToDeselectChanged()

void Dreamine.UI.Wpf.Behaviors.DataGridBehaviors.OnEnableClickToDeselectChanged ( DependencyObject d,
DependencyPropertyChangedEventArgs e )
inlinestaticprivate

연결 속성 값 변경을 처리하여 마우스 이벤트 구독을 갱신합니다.

매개변수
d값이 변경된 종속성 개체입니다.
e종속성 속성 변경 데이터입니다.

DataGridBehaviors.cs 파일의 127 번째 라인에서 정의되었습니다.

128 {
129 if (d is not DataGrid dg) return;
130
131 if ((bool)e.NewValue)
132 {
133 dg.PreviewMouseLeftButtonDown -= OnPreviewMouseLeftButtonDown;
134 dg.PreviewMouseLeftButtonDown += OnPreviewMouseLeftButtonDown;
135 }
136 else
137 {
138 dg.PreviewMouseLeftButtonDown -= OnPreviewMouseLeftButtonDown;
139 }
140 }

다음을 참조함 : OnPreviewMouseLeftButtonDown().

이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

◆ OnPreviewMouseLeftButtonDown()

void Dreamine.UI.Wpf.Behaviors.DataGridBehaviors.OnPreviewMouseLeftButtonDown ( object sender,
MouseButtonEventArgs e )
inlinestaticprivate

이미 선택된 행에서 발생한 마우스 왼쪽 버튼 입력을 처리하여 해당 행의 선택을 해제합니다.

매개변수
sender이벤트를 발생시킨 데이터 그리드입니다.
e마우스 버튼 이벤트 데이터입니다.

DataGridBehaviors.cs 파일의 166 번째 라인에서 정의되었습니다.

167 {
168 if (sender is not DataGrid dg) return;
169
170 // HitTest로 DataGridRow 찾기
171 var dep = e.OriginalSource as DependencyObject;
172 while (dep != null && dep is not DataGridRow)
173 dep = VisualTreeHelper.GetParent(dep);
174
175 if (dep is not DataGridRow row)
176 return;
177
178 // 이미 선택된 행을 다시 클릭한 경우 → 선택 해제
179 if (row.IsSelected)
180 {
181 // 포커스가 셀/행에 있을 때만 동작하도록 처리(원치 않는 해제 방지)
182 row.IsSelected = false;
183 e.Handled = true; // 기본 선택 동작 막기 → RowDetails 닫힘
184 }
185 // 아니면 기본 동작(선택) 수행 → RowDetails 열림(VisibleWhenSelected)
186 }

다음에 의해서 참조됨 : OnEnableClickToDeselectChanged().

이 함수를 호출하는 함수들에 대한 그래프입니다.:

◆ SetEnableClickToDeselect()

void Dreamine.UI.Wpf.Behaviors.DataGridBehaviors.SetEnableClickToDeselect ( DependencyObject obj,
bool value )
inlinestatic

클릭하여 선택 해제하는 기능의 활성화 여부를 설정합니다.

매개변수
obj값을 설정할 종속성 개체입니다.
value기능을 활성화하려면 true입니다.
예외
ArgumentNullExceptionobjnull인 경우 발생합니다.

DataGridBehaviors.cs 파일의 100 번째 라인에서 정의되었습니다.

101 => obj.SetValue(EnableClickToDeselectProperty, value);

다음을 참조함 : EnableClickToDeselectProperty.

멤버 데이터 문서화

◆ EnableClickToDeselectProperty

readonly DependencyProperty Dreamine.UI.Wpf.Behaviors.DataGridBehaviors.EnableClickToDeselectProperty
static
초기값:
=
DependencyProperty.RegisterAttached(
"EnableClickToDeselect",
typeof(bool),
new PropertyMetadata(false, OnEnableClickToDeselectChanged))
static void OnEnableClickToDeselectChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)

선택된 행을 다시 클릭할 때 선택을 해제하는 기능의 연결 속성입니다.

DataGridBehaviors.cs 파일의 26 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : GetEnableClickToDeselect(), SetEnableClickToDeselect().


이 클래스에 대한 문서화 페이지는 다음의 파일로부터 생성되었습니다.: