Skip to content

Commit e2e31c3

Browse files
committedOct 16, 2023
replace messagedialog with contentdialog #193
1 parent 1620209 commit e2e31c3

File tree

5 files changed

+37
-29
lines changed

5 files changed

+37
-29
lines changed
 
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,15 @@
1-
using WinRT.Interop;
2-
3-
namespace BooksApp.Services;
1+
namespace BooksApp.Services;
42

53
public class WinUIDialogService : IDialogService
64
{
75
public async Task ShowMessageAsync(string message)
86
{
9-
MessageDialog dlg = new(message);
10-
var hwnd = GetActiveWindow();
11-
if (hwnd == IntPtr.Zero)
7+
ContentDialog dlg = new()
128
{
13-
throw new InvalidOperationException();
14-
}
15-
InitializeWithWindow.Initialize(dlg, hwnd);
9+
Title = "Message",
10+
Content = message,
11+
PrimaryButtonText = "OK",
12+
};
1613
await dlg.ShowAsync();
1714
}
18-
19-
[DllImport("user32.dll")]
20-
private static extern IntPtr GetActiveWindow();
2115
}

‎4_Apps/Patterns/BooksLib/ViewModels/BookDetailViewModel.cs

+2
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,8 @@ public override async Task OnSaveAsync()
4747
{
4848
if (EditItem is null) throw new InvalidOperationException();
4949

50+
await _dialogService.ShowMessageAsync("TEst save");
51+
5052
await _itemsService.AddOrUpdateAsync(EditItem);
5153
}
5254
catch (Exception ex)

‎4_Apps/Windows/ControlsSamples/ControlsSamples/Views/ButtonsPage.xaml.cs

+7-4
Original file line numberDiff line numberDiff line change
@@ -13,10 +13,13 @@ public sealed partial class ButtonsPage : Page
1313

1414
private async void OnButtonClick(object sender, RoutedEventArgs e)
1515
{
16-
MessageDialog dlg = new("button 1 clicked");
17-
18-
IntPtr hwnd = WindowNative.GetWindowHandle(this);
19-
InitializeWithWindow.Initialize(dlg, hwnd);
16+
ContentDialog dlg = new()
17+
{
18+
Title = "Message",
19+
Content = "button 1 clicked",
20+
PrimaryButtonText = "OK",
21+
XamlRoot = this.Content.XamlRoot
22+
};
2023
await dlg.ShowAsync();
2124
}
2225
}

‎4_Apps/Windows/ControlsSamples/ControlsSamples/Views/DateSelectionPage.xaml.cs

+7-7
Original file line numberDiff line numberDiff line change
@@ -98,33 +98,33 @@ private async void OnDatesChanged(CalendarView sender, CalendarViewSelectedDates
9898

9999
string selectedDates = string.Join(", ", currentDatesSelected.Select(d => d.ToString("d")));
100100

101-
// await new MessageDialog($"dates selected: {selectedDates}").ShowAsync();
102101
await ShowMessageAsync($"dates selected: {selectedDates}");
103102
}
104103

105104
private async void OnDateChanged(CalendarDatePicker sender, CalendarDatePickerDateChangedEventArgs args)
106105
{
107-
// await new MessageDialog($"date changed to {args.NewDate}").ShowAsync();
108106
await ShowMessageAsync($"date changed to: {args.NewDate}");
109107
}
110108

111109
private async void OnDateChanged1(object sender, DatePickerValueChangedEventArgs e)
112110
{
113-
// await new MessageDialog($"date changed to {e.NewDate}").ShowAsync();
114111
await ShowMessageAsync($"date changed to: {e.NewDate}");
115112
}
116113

117114
private async void OnDatePicked(DatePickerFlyout sender, DatePickedEventArgs args)
118115
{
119-
// await new MessageDialog($"date changed to {args.NewDate}").ShowAsync();
120116
await ShowMessageAsync($"date changed to: {args.NewDate}");
121117
}
122118

123119
private async Task ShowMessageAsync(string message)
124120
{
125-
MessageDialog dlg = new(message);
126-
IntPtr hwnd = WindowNative.GetWindowHandle(this);
127-
InitializeWithWindow.Initialize(dlg, hwnd);
121+
ContentDialog dlg = new()
122+
{
123+
Title = "Message",
124+
Content = message,
125+
PrimaryButtonText = "OK",
126+
XamlRoot = this.XamlRoot
127+
};
128128
await dlg.ShowAsync();
129129
}
130130
}

‎4_Apps/Windows/XAMLIntro/Intro/Intro/Intro/MainWindow.xaml.cs

+15-6
Original file line numberDiff line numberDiff line change
@@ -24,9 +24,14 @@ public MainWindow()
2424

2525
button2.Click += async (sender, e) =>
2626
{
27-
MessageDialog dlg = new("button 2 clicked");
28-
IntPtr hwnd = WindowNative.GetWindowHandle(this);
29-
InitializeWithWindow.Initialize(dlg, hwnd);
27+
ContentDialog dlg = new()
28+
{
29+
Title = "Message",
30+
Content = "button 2 clicked",
31+
PrimaryButtonText = "OK",
32+
XamlRoot = this.Content.XamlRoot
33+
};
34+
3035
await dlg.ShowAsync();
3136
};
3237

@@ -37,9 +42,13 @@ public MainWindow()
3742

3843
private async void OnButtonClick(object sender, RoutedEventArgs e)
3944
{
40-
MessageDialog dlg = new("button 1 clicked");
41-
IntPtr hwnd = WindowNative.GetWindowHandle(this);
42-
InitializeWithWindow.Initialize(dlg, hwnd);
45+
ContentDialog dlg = new()
46+
{
47+
Title = "Message",
48+
Content = "button 1 clicked",
49+
PrimaryButtonText = "OK",
50+
XamlRoot = this.Content.XamlRoot
51+
};
4352
await dlg.ShowAsync();
4453
}
4554
}

0 commit comments

Comments
 (0)
Please sign in to comment.