SampleCrossUi.Maui 1.0.0.0
SampleCrossUi.Maui 사용 방법을 보여 주는 예제 프로젝트입니다.
로딩중...
검색중...
일치하는것 없음
SampleCrossUi.Maui.Views.ControlsPage 클래스 참조

더 자세히 ...

SampleCrossUi.Maui.Views.ControlsPage에 대한 상속 다이어그램 :
SampleCrossUi.Maui.Views.ControlsPage에 대한 협력 다이어그램:

Public 멤버 함수

 ControlsPage (ControlsViewModel viewModel)

Private 멤버 함수

 readonly (string Title, VerticalStackLayout Content)[] _tabs
void SelectTab (VerticalStackLayout target, Button tabButton)
void OnVariantButtonClicked (object? sender, EventArgs e)
void OnRadioCheckedChanged (object? sender, CheckedChangedEventArgs e)
void OnGridSelectionChanged (object? sender, SelectionChangedEventArgs e)
void OnFruitItemDoubleTapped (object? sender, TappedEventArgs e)
async void OnLogClickClicked (object? sender, EventArgs e)

Private 속성

readonly ControlsViewModel _viewModel
Button? _selectedTabButton

상세한 설명

Controls Page 기능과 관련 상태를 캡슐화합니다.

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

생성자 & 소멸자 문서화

◆ ControlsPage()

SampleCrossUi.Maui.Views.ControlsPage.ControlsPage ( ControlsViewModel viewModel)
inline

지정한 설정으로 ControlsPage 클래스의 새 인스턴스를 초기화합니다.

매개변수
viewModelview Model에 사용할 ControlsViewModel 값입니다.

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

60 {
61 InitializeComponent();
62 _viewModel = viewModel;
63 BindingContext = _viewModel;
64
65 RadioOptionA.IsChecked = _viewModel.SelectedRadio == "Option A";
66 RadioOptionB.IsChecked = _viewModel.SelectedRadio == "Option B";
67
68 VirtualKeyboard.Attach(MainEntry);
69
70 _tabs = new (string, VerticalStackLayout)[]
71 {
72 ("Button", TabButton),
73 ("CheckBox / Radio", TabCheckRadio),
74 ("CheckLed", TabCheckLed),
75 ("TextBox", TabTextBox),
76 ("ComboBox", TabComboBox),
77 ("DataGrid / ListBox", TabGridList),
78 ("Misc", TabMisc),
79 };
80
81 foreach (var (title, content) in _tabs)
82 {
83 var tabButton = new Button
84 {
85 Text = title,
86 BackgroundColor = Color.FromArgb("#0D1B3E"),
87 TextColor = Colors.White,
88 CornerRadius = 6,
89 FontSize = 12,
90 Padding = new Thickness(10, 4)
91 };
92 tabButton.Clicked += (_, _) => SelectTab(content, tabButton);
93 TabRow.Children.Add(tabButton);
94
95 if (content == TabButton)
96 {
97 _selectedTabButton = tabButton;
98 tabButton.BackgroundColor = Color.FromArgb("#0d6efd");
99 }
100 }
101 }

다음을 참조함 : _selectedTabButton, _viewModel, SelectTab().

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

멤버 함수 문서화

◆ OnFruitItemDoubleTapped()

void SampleCrossUi.Maui.Views.ControlsPage.OnFruitItemDoubleTapped ( object? sender,
TappedEventArgs e )
inlineprivate

Fruit Item Double Tapped 이벤트 또는 상태 변경을 처리합니다.

매개변수
sender이벤트를 발생시킨 객체입니다.
e이벤트와 관련된 데이터를 포함합니다.

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

258 {
259 if (sender is Label { Text: { } text })
260 _viewModel.ListBoxActivatedCommand.Execute(text);
261 }

다음을 참조함 : _viewModel.

◆ OnGridSelectionChanged()

void SampleCrossUi.Maui.Views.ControlsPage.OnGridSelectionChanged ( object? sender,
SelectionChangedEventArgs e )
inlineprivate

Grid Selection Changed 이벤트 또는 상태 변경을 처리합니다.

매개변수
sender이벤트를 발생시킨 객체입니다.
e이벤트와 관련된 데이터를 포함합니다.

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

227 {
228 GridSelectionLabel.Text = e.CurrentSelection.FirstOrDefault() is ControlsDemoRow row
229 ? $"선택된 행: No.{row.No} {row.Name} ({row.Status})"
230 : "(선택된 행 없음)";
231 }

◆ OnLogClickClicked()

async void SampleCrossUi.Maui.Views.ControlsPage.OnLogClickClicked ( object? sender,
EventArgs e )
inlineprivate

Log Click Clicked 이벤트 또는 상태 변경을 처리합니다.

매개변수
sender이벤트를 발생시킨 객체입니다.
e이벤트와 관련된 데이터를 포함합니다.

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

288 {
289 _viewModel.ClickMeCommand.Execute(null);
290 await Task.Delay(50);
291 if (_viewModel.ActivityLog.Count > 0)
292 LogList.ScrollTo(_viewModel.ActivityLog[^1], position: ScrollToPosition.End, animate: true);
293 }

다음을 참조함 : _viewModel.

◆ OnRadioCheckedChanged()

void SampleCrossUi.Maui.Views.ControlsPage.OnRadioCheckedChanged ( object? sender,
CheckedChangedEventArgs e )
inlineprivate

Radio Checked Changed 이벤트 또는 상태 변경을 처리합니다.

매개변수
sender이벤트를 발생시킨 객체입니다.
e이벤트와 관련된 데이터를 포함합니다.

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

194 {
195 if (!e.Value || sender is not RadioButton radio)
196 return;
197
198 var option = radio.Content?.ToString() ?? string.Empty;
199 _viewModel.SelectRadioCommand.Execute(option);
200 }

다음을 참조함 : _viewModel.

◆ OnVariantButtonClicked()

void SampleCrossUi.Maui.Views.ControlsPage.OnVariantButtonClicked ( object? sender,
EventArgs e )
inlineprivate

Variant Button Clicked 이벤트 또는 상태 변경을 처리합니다.

매개변수
sender이벤트를 발생시킨 객체입니다.
e이벤트와 관련된 데이터를 포함합니다.

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

164 {
165 if (sender is Button button)
166 ButtonTabStatus.Text = $"[{DateTime.Now:HH:mm:ss}] '{button.Text}' 버튼이 클릭되었습니다.";
167 }

◆ readonly()

SampleCrossUi.Maui.Views.ControlsPage.readonly ( string Title,
VerticalStackLayout Content )
private

tabs 값을 보관합니다.

◆ SelectTab()

void SampleCrossUi.Maui.Views.ControlsPage.SelectTab ( VerticalStackLayout target,
Button tabButton )
inlineprivate

Select Tab 작업을 수행합니다.

매개변수
targettarget에 사용할 VerticalStackLayout 값입니다.
tabButtontab Button에 사용할 Button 값입니다.

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

128 {
129 foreach (var (_, content) in _tabs)
130 content.IsVisible = content == target;
131
132 if (_selectedTabButton is not null)
133 _selectedTabButton.BackgroundColor = Color.FromArgb("#0D1B3E");
134
135 tabButton.BackgroundColor = Color.FromArgb("#0d6efd");
136 _selectedTabButton = tabButton;
137 }

다음을 참조함 : _selectedTabButton.

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

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

멤버 데이터 문서화

◆ _selectedTabButton

Button? SampleCrossUi.Maui.Views.ControlsPage._selectedTabButton
private

selected Tab Button 값을 보관합니다.

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

다음에 의해서 참조됨 : ControlsPage(), SelectTab().

◆ _viewModel

readonly ControlsViewModel SampleCrossUi.Maui.Views.ControlsPage._viewModel
private

view Model 값을 보관합니다.

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

다음에 의해서 참조됨 : ControlsPage(), OnFruitItemDoubleTapped(), OnLogClickClicked(), OnRadioCheckedChanged().


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