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

더 자세히 ...

Dreamine.UI.Wpf.Controls.Navigation.DreamineNavigationBar에 대한 상속 다이어그램 :
Dreamine.UI.Wpf.Controls.Navigation.DreamineNavigationBar에 대한 협력 다이어그램:

Public 멤버 함수

void InitializeOrResetLogoutTimer ()
 DreamineNavigationBar ()

정적 Public 멤버 함수

static void NotifyButtonClicked (ButtonData clickedButton)

정적 Public 속성

static readonly DependencyProperty AutoLogoutTimeoutProperty
static readonly DependencyProperty OnceLoginProperty
static readonly new DependencyProperty LanguageProperty
static readonly DependencyProperty ButtonDatasProperty
static readonly DependencyProperty PositionProperty

속성

int AutoLogoutTimeout [get, set]
bool OnceLogin [get, set]
new Language Language [get, set]
ObservableCollection< ButtonDataButtonDatas [get, set]
NavigationBarPosition Position [get, set]

이벤트

static ? EventHandler AutoLogoutOccurred

Private 멤버 함수

void ResetLogoutTimerIfNeeded ()
void StopLogoutTimer ()
void OnAutoLogout ()
void ButtonDatas_CollectionChanged (object? sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs e)
void UpdateMarginAndAlignment ()
void ApplyLastButtonMargin (Thickness defaultMargin, Thickness lastMargin)
void DreamineButton_Click (object sender, RoutedEventArgs e)

정적 Private 멤버 함수

static void OnAutoLogoutTimeoutChanged (DependencyObject d, DependencyPropertyChangedEventArgs e)
static void EnsureGlobalInputHook ()
static void OnGlobalInputStatic (object sender, PreProcessInputEventArgs e)
static void OnOnceLoginChanged (DependencyObject d, DependencyPropertyChangedEventArgs e)
static void OnButtonDatasChanged (DependencyObject d, DependencyPropertyChangedEventArgs e)
static void OnPositionChanged (DependencyObject d, DependencyPropertyChangedEventArgs e)
static IEnumerable< T > FindVisualChildren< T > (DependencyObject depObj)

Private 속성

DispatcherTimer? _logoutTimer

정적 Private 속성

static readonly HashSet< DreamineNavigationBar_instances = new()
static volatile bool _isInputHooked = false

상세한 설명

자동 로그아웃, 동적 버튼, 권한 및 지역화를 지원하는 탐색 모음입니다.

DreamineNavigationBar.xaml.cs 파일의 58 번째 라인에서 정의되었습니다.

생성자 & 소멸자 문서화

◆ DreamineNavigationBar()

Dreamine.UI.Wpf.Controls.Navigation.DreamineNavigationBar.DreamineNavigationBar ( )
inline

구성 요소를 초기화하고 전역 입력 추적 및 인스턴스 수명 처리를 등록합니다.

DreamineNavigationBar.xaml.cs 파일의 409 번째 라인에서 정의되었습니다.

410 {
411 InitializeComponent();
412
413 if (ButtonDatas == null)
414 ButtonDatas = new ObservableCollection<ButtonData>();
415
416 EnsureGlobalInputHook();
417 _instances.Add(this);
418 Unloaded += (_, _) => _instances.Remove(this);
419
420 // Window.Closed 보장: Unloaded가 발생하지 않을 때도 GC 루트 제거
421 Loaded += (_, _) =>
422 {
423 var parentWindow = Window.GetWindow(this);
424 if (parentWindow != null)
425 parentWindow.Closed += (_, _) => _instances.Remove(this);
426 };
427 }

다음을 참조함 : _instances, ButtonDatas, EnsureGlobalInputHook().

다음에 의해서 참조됨 : OnAutoLogoutTimeoutChanged(), OnButtonDatasChanged(), OnOnceLoginChanged(), OnPositionChanged().

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

멤버 함수 문서화

◆ ApplyLastButtonMargin()

void Dreamine.UI.Wpf.Controls.Navigation.DreamineNavigationBar.ApplyLastButtonMargin ( Thickness defaultMargin,
Thickness lastMargin )
inlineprivate

모든 버튼에 기본 여백을 적용하고 마지막 표시 버튼에 별도 여백을 적용합니다.

매개변수
defaultMargin일반 버튼에 적용할 여백입니다.
lastMargin마지막 표시 버튼에 적용할 여백입니다.

DreamineNavigationBar.xaml.cs 파일의 659 번째 라인에서 정의되었습니다.

660 {
661 if (ButtonDatas == null || ButtonDatas.Count == 0)
662 return;
663
664 var visibleIndices = ButtonDatas
665 .Select((btn, idx) => new { btn, idx })
666 .Where(x => x.btn.Visibility == Visibility.Visible)
667 .Select(x => x.idx)
668 .ToList();
669
670 if (visibleIndices.Count == 0)
671 return;
672
673 foreach (var btn in ButtonDatas)
674 {
675 btn.Margin = defaultMargin;
676 }
677 ButtonDatas[visibleIndices.Last()].Margin = lastMargin;
678 }

다음을 참조함 : ButtonDatas.

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

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

◆ ButtonDatas_CollectionChanged()

void Dreamine.UI.Wpf.Controls.Navigation.DreamineNavigationBar.ButtonDatas_CollectionChanged ( object? sender,
System.Collections.Specialized.NotifyCollectionChangedEventArgs e )
inlineprivate

버튼 모음 변경 시 여백과 정렬을 다시 계산합니다.

매개변수
sender변경된 버튼 모음입니다.
e모음 변경 데이터입니다.

DreamineNavigationBar.xaml.cs 파일의 545 번째 라인에서 정의되었습니다.

546 {
547 UpdateMarginAndAlignment();
548 }

다음을 참조함 : UpdateMarginAndAlignment().

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

◆ DreamineButton_Click()

void Dreamine.UI.Wpf.Controls.Navigation.DreamineNavigationBar.DreamineButton_Click ( object sender,
RoutedEventArgs e )
inlineprivate

내부 탐색 버튼 클릭 이벤트를 받기 위한 확장 지점입니다.

매개변수
sender클릭된 버튼입니다.
e클릭 이벤트 데이터입니다.

현재 구현은 의도적으로 아무 작업도 하지 않습니다.

DreamineNavigationBar.xaml.cs 파일의 824 번째 라인에서 정의되었습니다.

825 {
826 }

◆ EnsureGlobalInputHook()

void Dreamine.UI.Wpf.Controls.Navigation.DreamineNavigationBar.EnsureGlobalInputHook ( )
inlinestaticprivate

마우스·키보드·터치 활동을 감지하는 전역 입력 처리기를 한 번 등록합니다.

DreamineNavigationBar.xaml.cs 파일의 167 번째 라인에서 정의되었습니다.

168 {
169 if (_isInputHooked == false)
170 {
171 InputManager.Current.PreProcessInput += OnGlobalInputStatic;
172 _isInputHooked = true;
173 }
174 }

다음을 참조함 : _isInputHooked, OnGlobalInputStatic().

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

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

◆ FindVisualChildren< T >()

IEnumerable< T > Dreamine.UI.Wpf.Controls.Navigation.DreamineNavigationBar.FindVisualChildren< T > ( DependencyObject depObj)
inlinestaticprivate

시각적 트리를 재귀 탐색하여 지정한 형식의 모든 자식을 반환합니다.

템플릿 파라메터
T찾을 종속성 객체 형식입니다.
매개변수
depObj탐색을 시작할 객체입니다.
반환값
일치하는 시각적 자식의 지연 시퀀스입니다.
타입 한정자들
T :DependencyObject 

DreamineNavigationBar.xaml.cs 파일의 775 번째 라인에서 정의되었습니다.

775 : DependencyObject
776 {
777 if (depObj == null)
778 yield break;
779
780 for (int i = 0; i < VisualTreeHelper.GetChildrenCount(depObj); i++)
781 {
782 DependencyObject child = VisualTreeHelper.GetChild(depObj, i);
783
784 if (child is T t)
785 yield return t;
786
787 foreach (var childOfChild in FindVisualChildren<T>(child))
788 yield return childOfChild;
789 }
790 }

다음을 참조함 : FindVisualChildren< T >().

다음에 의해서 참조됨 : FindVisualChildren< T >().

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

◆ InitializeOrResetLogoutTimer()

void Dreamine.UI.Wpf.Controls.Navigation.DreamineNavigationBar.InitializeOrResetLogoutTimer ( )
inline

현재 제한 시간으로 로그아웃 타이머를 만들거나 다시 시작합니다.

예외
ArgumentOutOfRangeExceptionAutoLogoutTimeout 값으로 유효하지 않은 TimeSpan을 만들 때 발생할 수 있습니다.

DreamineNavigationBar.xaml.cs 파일의 262 번째 라인에서 정의되었습니다.

263 {
264 if (_logoutTimer == null)
265 {
266 _logoutTimer = new DispatcherTimer
267 {
268 Interval = TimeSpan.FromSeconds(AutoLogoutTimeout)
269 };
270 _logoutTimer.Tick += (s, e) =>
271 {
272 _logoutTimer.Stop();
273
274 OnAutoLogout();
275 };
276 }
277
278 _logoutTimer.Stop();
279 _logoutTimer.Interval = TimeSpan.FromSeconds(AutoLogoutTimeout);
280 _logoutTimer.Start();
281 }

다음을 참조함 : _logoutTimer, AutoLogoutTimeout, OnAutoLogout().

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

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

◆ NotifyButtonClicked()

void Dreamine.UI.Wpf.Controls.Navigation.DreamineNavigationBar.NotifyButtonClicked ( ButtonData clickedButton)
inlinestatic

모든 표시 창에서 클릭한 버튼을 찾아 포커스 가능 규칙에 따라 선택 상태를 갱신합니다.

매개변수
clickedButton클릭된 버튼 데이터입니다.
예외
NullReferenceException현재 WPF 애플리케이션이 없을 때 발생할 수 있습니다.

DreamineNavigationBar.xaml.cs 파일의 704 번째 라인에서 정의되었습니다.

705 {
706 var navBars = Application.Current.Windows
707 .OfType<Window>()
708 .SelectMany(w => FindVisualChildren<DreamineNavigationBar>(w))
709 .ToList();
710
711 ButtonData buttonData = null!;
712
713 foreach (var nav in navBars)
714 {
715 if (!nav.ButtonDatas.Contains(clickedButton))
716 continue;
717
718 foreach (var btn in nav.ButtonDatas)
719 {
720 if (btn.IsSelected == true && btn.IsFocusableEx == true)
721 {
722 buttonData = btn;
723 }
724 btn.IsSelected = false;
725 }
726 if (clickedButton.IsFocusableEx)
727 {
728 clickedButton.IsSelected = true;
729 }
730 else
731 {
732 foreach (var btn in nav.ButtonDatas)
733 {
734 if (btn == buttonData)
735 {
736 btn.IsSelected = true;
737 }
738 }
739 }
740 }
741 }

다음에 의해서 참조됨 : Dreamine.UI.Wpf.Controls.DreamineButton.TryExecuteCommand().

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

◆ OnAutoLogout()

void Dreamine.UI.Wpf.Controls.Navigation.DreamineNavigationBar.OnAutoLogout ( )
inlineprivate

소유 창을 숨기고 버튼 등급을 초기화한 뒤 자동 로그아웃 이벤트와 알림을 발생시킵니다.

예외
NullReferenceExceptionWPF 애플리케이션 또는 ButtonDatas가 초기화되지 않았을 때 발생할 수 있습니다.

DreamineNavigationBar.xaml.cs 파일의 312 번째 라인에서 정의되었습니다.

313 {
314 foreach (Window window in Application.Current.Windows)
315 {
316 if (window.Owner != null && window.IsVisible)
317 window.Hide();
318 }
319
320 foreach (var btn in ButtonDatas)
321 btn.Grade = 0;
322
323 AutoLogoutOccurred?.Invoke(this, EventArgs.Empty);
324
325 DreamineMessageBox.ShowAsync(
326 "You have been automatically logged out due to inactivity.",
327 "Auto Logout",
328 MessageBoxButton.OK,
329 MessageBoxImage.Information,
330 autoClick: MessageBoxResult.OK,
331 autoClickDelaySeconds: 5);
332 }

다음을 참조함 : AutoLogoutOccurred, ButtonDatas, Dreamine.UI.Wpf.Controls.MessageBox.DreamineMessageBox.ShowAsync().

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

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

◆ OnAutoLogoutTimeoutChanged()

void Dreamine.UI.Wpf.Controls.Navigation.DreamineNavigationBar.OnAutoLogoutTimeoutChanged ( DependencyObject d,
DependencyPropertyChangedEventArgs e )
inlinestaticprivate

제한 시간 변경에 따라 해당 탐색 모음의 로그아웃 타이머를 재설정하거나 중지합니다.

매개변수
d속성이 변경된 객체입니다.
e이전 값과 새 값을 포함하는 변경 데이터입니다.

DreamineNavigationBar.xaml.cs 파일의 131 번째 라인에서 정의되었습니다.

132 {
133 if (d is DreamineNavigationBar nav)
134 {
135 nav.ResetLogoutTimerIfNeeded();
136 }
137 }

다음을 참조함 : DreamineNavigationBar().

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

◆ OnButtonDatasChanged()

void Dreamine.UI.Wpf.Controls.Navigation.DreamineNavigationBar.OnButtonDatasChanged ( DependencyObject d,
DependencyPropertyChangedEventArgs e )
inlinestaticprivate

버튼 모음이 교체되면 이전 알림을 해제하고 새 알림을 구독한 뒤 레이아웃을 갱신합니다.

매개변수
d버튼 모음이 변경된 객체입니다.
e이전 모음과 새 모음을 포함하는 변경 데이터입니다.

DreamineNavigationBar.xaml.cs 파일의 507 번째 라인에서 정의되었습니다.

508 {
509 if (d is DreamineNavigationBar nav)
510 {
511 if (e.OldValue is ObservableCollection<ButtonData> oldList)
512 oldList.CollectionChanged -= nav.ButtonDatas_CollectionChanged;
513
514 if (e.NewValue is ObservableCollection<ButtonData> newList)
515 newList.CollectionChanged += nav.ButtonDatas_CollectionChanged;
516
517 nav.UpdateMarginAndAlignment();
518 }
519 }

다음을 참조함 : DreamineNavigationBar().

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

◆ OnGlobalInputStatic()

void Dreamine.UI.Wpf.Controls.Navigation.DreamineNavigationBar.OnGlobalInputStatic ( object sender,
PreProcessInputEventArgs e )
inlinestaticprivate

사용자 입력을 감지하면 자동 로그아웃이 활성화된 모든 인스턴스의 타이머를 재설정합니다.

매개변수
sender입력 관리자 이벤트 발신자입니다.
e준비 중인 입력 정보를 포함하는 데이터입니다.
예외
NullReferenceExceptionenull일 때 발생합니다.

DreamineNavigationBar.xaml.cs 파일의 208 번째 라인에서 정의되었습니다.

209 {
210 if (e.StagingItem.Input is MouseEventArgs or KeyboardEventArgs or TouchEventArgs)
211 {
212 foreach (var nav in _instances)
213 {
214 if (nav.AutoLogoutTimeout > 0)
215 nav.InitializeOrResetLogoutTimer();
216 }
217 }
218 }

다음을 참조함 : _instances.

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

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

◆ OnOnceLoginChanged()

void Dreamine.UI.Wpf.Controls.Navigation.DreamineNavigationBar.OnOnceLoginChanged ( DependencyObject d,
DependencyPropertyChangedEventArgs e )
inlinestaticprivate

한 번 로그인 설정을 전역 탐색 도우미에 반영합니다.

매개변수
d속성이 변경된 객체입니다.
e새 설정값을 포함하는 변경 데이터입니다.
예외
InvalidCastException새 값이 bool이 아닐 때 발생할 수 있습니다.

DreamineNavigationBar.xaml.cs 파일의 395 번째 라인에서 정의되었습니다.

396 {
397 if (d is DreamineNavigationBar nav)
398 VsNavigationHelper.IsOnceLoginEnabled = (bool)e.NewValue;
399 }

다음을 참조함 : DreamineNavigationBar(), Dreamine.UI.Wpf.Controls.Navigation.VsNavigationHelper.IsOnceLoginEnabled.

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

◆ OnPositionChanged()

void Dreamine.UI.Wpf.Controls.Navigation.DreamineNavigationBar.OnPositionChanged ( DependencyObject d,
DependencyPropertyChangedEventArgs e )
inlinestaticprivate

배치 방향 변경 시 버튼 여백과 정렬을 다시 계산합니다.

매개변수
d위치가 변경된 객체입니다.
e이전 위치와 새 위치를 포함하는 변경 데이터입니다.

DreamineNavigationBar.xaml.cs 파일의 603 번째 라인에서 정의되었습니다.

604 {
605 if (d is DreamineNavigationBar nav)
606 nav.UpdateMarginAndAlignment();
607 }

다음을 참조함 : DreamineNavigationBar().

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

◆ ResetLogoutTimerIfNeeded()

void Dreamine.UI.Wpf.Controls.Navigation.DreamineNavigationBar.ResetLogoutTimerIfNeeded ( )
inlineprivate

현재 제한 시간이 양수면 타이머를 재시작하고 아니면 중지합니다.

DreamineNavigationBar.xaml.cs 파일의 238 번째 라인에서 정의되었습니다.

239 {
240 if (AutoLogoutTimeout > 0)
241 InitializeOrResetLogoutTimer();
242 else
243 StopLogoutTimer();
244 }

다음을 참조함 : AutoLogoutTimeout, InitializeOrResetLogoutTimer(), StopLogoutTimer().

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

◆ StopLogoutTimer()

void Dreamine.UI.Wpf.Controls.Navigation.DreamineNavigationBar.StopLogoutTimer ( )
inlineprivate

로그아웃 타이머가 있으면 중지합니다.

DreamineNavigationBar.xaml.cs 파일의 291 번째 라인에서 정의되었습니다.

292 {
293 _logoutTimer?.Stop();
294 }

다음을 참조함 : _logoutTimer.

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

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

◆ UpdateMarginAndAlignment()

void Dreamine.UI.Wpf.Controls.Navigation.DreamineNavigationBar.UpdateMarginAndAlignment ( )
inlineprivate

현재 방향에 맞는 기본 및 마지막 버튼 여백을 계산하여 적용합니다.

DreamineNavigationBar.xaml.cs 파일의 617 번째 라인에서 정의되었습니다.

618 {
619 Thickness defaultMargin = Position switch
620 {
621 NavigationBarPosition.Right => new Thickness(0, 0, 0, 4),
622 NavigationBarPosition.Left => new Thickness(0, 0, 0, 4),
623 _ => new Thickness(0, 0, 4, 0)
624 };
625 Thickness lastMargin = Position switch
626 {
627 NavigationBarPosition.Right => new Thickness(0, 0, 0, 4),
628 NavigationBarPosition.Left => new Thickness(0, 0, 0, 4),
629 _ => new Thickness(0)
630 };
631
632 ApplyLastButtonMargin(defaultMargin, lastMargin);
633 }

다음을 참조함 : ApplyLastButtonMargin(), Dreamine.UI.Wpf.Controls.Navigation.Left, Position, Dreamine.UI.Wpf.Controls.Navigation.Right.

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

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

멤버 데이터 문서화

◆ _instances

readonly HashSet<DreamineNavigationBar> Dreamine.UI.Wpf.Controls.Navigation.DreamineNavigationBar._instances = new()
staticprivate

전역 입력 활동을 전달할 활성 탐색 모음 인스턴스를 보관합니다.

DreamineNavigationBar.xaml.cs 파일의 147 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : DreamineNavigationBar(), OnGlobalInputStatic().

◆ _isInputHooked

volatile bool Dreamine.UI.Wpf.Controls.Navigation.DreamineNavigationBar._isInputHooked = false
staticprivate

전역 입력 처리기가 이미 등록되었는지 나타냅니다.

DreamineNavigationBar.xaml.cs 파일의 157 번째 라인에서 정의되었습니다.

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

◆ _logoutTimer

DispatcherTimer? Dreamine.UI.Wpf.Controls.Navigation.DreamineNavigationBar._logoutTimer
private

비활성 시간을 측정하는 디스패처 타이머를 보관합니다.

DreamineNavigationBar.xaml.cs 파일의 228 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : InitializeOrResetLogoutTimer(), StopLogoutTimer().

◆ AutoLogoutTimeoutProperty

readonly DependencyProperty Dreamine.UI.Wpf.Controls.Navigation.DreamineNavigationBar.AutoLogoutTimeoutProperty
static
초기값:
=
DependencyProperty.Register(
typeof(int),
new PropertyMetadata(0, OnAutoLogoutTimeoutChanged))
static void OnAutoLogoutTimeoutChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)

AutoLogoutTimeout 종속성 속성을 식별합니다.

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

◆ ButtonDatasProperty

readonly DependencyProperty Dreamine.UI.Wpf.Controls.Navigation.DreamineNavigationBar.ButtonDatasProperty
static
초기값:
=
DependencyProperty.Register(
nameof(ButtonDatas),
typeof(ObservableCollection<ButtonData>),
new PropertyMetadata(new ObservableCollection<ButtonData>(), OnButtonDatasChanged))
static void OnButtonDatasChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)

ButtonDatas 종속성 속성을 식별합니다.

DreamineNavigationBar.xaml.cs 파일의 476 번째 라인에서 정의되었습니다.

◆ LanguageProperty

readonly new DependencyProperty Dreamine.UI.Wpf.Controls.Navigation.DreamineNavigationBar.LanguageProperty
static
초기값:
=
DependencyProperty.Register(nameof(Language), typeof(Language), typeof(DreamineNavigationBar), new PropertyMetadata(Language.English))

Language 종속성 속성을 식별합니다.

DreamineNavigationBar.xaml.cs 파일의 451 번째 라인에서 정의되었습니다.

◆ OnceLoginProperty

readonly DependencyProperty Dreamine.UI.Wpf.Controls.Navigation.DreamineNavigationBar.OnceLoginProperty
static
초기값:
=
DependencyProperty.Register(
nameof(OnceLogin),
typeof(bool),
new PropertyMetadata(false, OnOnceLoginChanged))
bool OnceLogin
Enables one-time login session reuse.
static void OnOnceLoginChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
Updates global navigation helper when OnceLogin changes.

OnceLogin 종속성 속성을 식별합니다.

DreamineNavigationBar.xaml.cs 파일의 356 번째 라인에서 정의되었습니다.

◆ PositionProperty

readonly DependencyProperty Dreamine.UI.Wpf.Controls.Navigation.DreamineNavigationBar.PositionProperty
static
초기값:
=
DependencyProperty.Register(
nameof(Position),
new PropertyMetadata(NavigationBarPosition.Top, OnPositionChanged))
static void OnPositionChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)

Position 종속성 속성을 식별합니다.

DreamineNavigationBar.xaml.cs 파일의 572 번째 라인에서 정의되었습니다.

속성 문서화

◆ AutoLogoutTimeout

int Dreamine.UI.Wpf.Controls.Navigation.DreamineNavigationBar.AutoLogoutTimeout
getset

자동 로그아웃 비활성 제한 시간을 초 단위로 가져오거나 설정하며 0은 기능을 끕니다.

DreamineNavigationBar.xaml.cs 파일의 86 번째 라인에서 정의되었습니다.

87 {
88 get => (int)GetValue(AutoLogoutTimeoutProperty);
89 set => SetValue(AutoLogoutTimeoutProperty, value);
90 }

다음에 의해서 참조됨 : InitializeOrResetLogoutTimer(), ResetLogoutTimerIfNeeded().

◆ ButtonDatas

ObservableCollection<ButtonData> Dreamine.UI.Wpf.Controls.Navigation.DreamineNavigationBar.ButtonDatas
getset

탐색 모음에 표시할 버튼 데이터 모음을 가져오거나 설정합니다.

DreamineNavigationBar.xaml.cs 파일의 462 번째 라인에서 정의되었습니다.

463 {
464 get => (ObservableCollection<ButtonData>)GetValue(ButtonDatasProperty);
465 set => SetValue(ButtonDatasProperty, value);
466 }

다음에 의해서 참조됨 : ApplyLastButtonMargin(), DreamineNavigationBar(), OnAutoLogout().

◆ Language

new Language Dreamine.UI.Wpf.Controls.Navigation.DreamineNavigationBar.Language
getset

탐색 UI에 사용할 언어를 가져오거나 설정합니다.

DreamineNavigationBar.xaml.cs 파일의 437 번째 라인에서 정의되었습니다.

438 {
439 get => (Language)GetValue(LanguageProperty);
440 set => SetValue(LanguageProperty, value);
441 }

◆ OnceLogin

bool Dreamine.UI.Wpf.Controls.Navigation.DreamineNavigationBar.OnceLogin
getset

세션에서 한 번만 로그인을 요구하는 모드를 가져오거나 설정합니다.

DreamineNavigationBar.xaml.cs 파일의 342 번째 라인에서 정의되었습니다.

343 {
344 get => (bool)GetValue(OnceLoginProperty);
345 set => SetValue(OnceLoginProperty, value);
346 }

◆ Position

NavigationBarPosition Dreamine.UI.Wpf.Controls.Navigation.DreamineNavigationBar.Position
getset

탐색 모음이 배치될 방향을 가져오거나 설정합니다.

DreamineNavigationBar.xaml.cs 파일의 558 번째 라인에서 정의되었습니다.

559 {
560 get => (NavigationBarPosition)GetValue(PositionProperty);
561 set => SetValue(PositionProperty, value);
562 }

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

이벤트 문서화

◆ AutoLogoutOccurred

? EventHandler Dreamine.UI.Wpf.Controls.Navigation.DreamineNavigationBar.AutoLogoutOccurred
static

비활성 시간 제한으로 자동 로그아웃이 수행될 때 발생합니다.

AutoLogoutTimeout이 0보다 클 때만 발생합니다.

DreamineNavigationBar.xaml.cs 파일의 76 번째 라인에서 정의되었습니다.

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


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