添加电话应用绑定页面
This commit is contained in:
parent
de0a0e3e78
commit
633963be44
@ -22,6 +22,7 @@
|
|||||||
|
|
||||||
<NavigationView.MenuItems>
|
<NavigationView.MenuItems>
|
||||||
<NavigationViewItem Tag="HomePage" Icon="Home" Content="主页" />
|
<NavigationViewItem Tag="HomePage" Icon="Home" Content="主页" />
|
||||||
|
<NavigationViewItem Tag="PhoneAppBinderPage" Icon="PhoneBook" Content="电话应用程序绑定" />
|
||||||
<NavigationViewItem Tag="NotePage" Icon="Bookmarks" Content="笔记" />
|
<NavigationViewItem Tag="NotePage" Icon="Bookmarks" Content="笔记" />
|
||||||
<NavigationViewItem Tag="FileUploadPage" Icon="Upload" Content="文件上传"></NavigationViewItem>
|
<NavigationViewItem Tag="FileUploadPage" Icon="Upload" Content="文件上传"></NavigationViewItem>
|
||||||
<NavigationViewItemSeparator />
|
<NavigationViewItemSeparator />
|
||||||
|
|||||||
@ -52,6 +52,9 @@ namespace WinUINotes
|
|||||||
case "FileUploadPage":
|
case "FileUploadPage":
|
||||||
ContentFrame.Navigate(typeof(FileUploadPage));
|
ContentFrame.Navigate(typeof(FileUploadPage));
|
||||||
break;
|
break;
|
||||||
|
case "PhoneAppBinderPage":
|
||||||
|
ContentFrame.Navigate(typeof(PhoneAppBinderPage));
|
||||||
|
break;
|
||||||
// 可以添加更多 case 来处理其他导航项
|
// 可以添加更多 case 来处理其他导航项
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
21
WinUINotes/Model/PhoneAppItem.cs
Normal file
21
WinUINotes/Model/PhoneAppItem.cs
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
namespace WinUINotes.Model
|
||||||
|
{
|
||||||
|
public class PhoneAppItem
|
||||||
|
{
|
||||||
|
public string AppName { get; set; }
|
||||||
|
|
||||||
|
public List<string> AppUrls { get; set; }
|
||||||
|
|
||||||
|
// 这个属性用于在ListView中显示多个网站
|
||||||
|
public string AppUrlsDisplayString
|
||||||
|
{
|
||||||
|
get => AppUrls != null && AppUrls.Count > 0 ? string.Join(", ", AppUrls) : "无网站";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
75
WinUINotes/PhoneAppBinderPage.xaml
Normal file
75
WinUINotes/PhoneAppBinderPage.xaml
Normal file
@ -0,0 +1,75 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Page
|
||||||
|
x:Class="WinUINotes.PhoneAppBinderPage"
|
||||||
|
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||||
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||||
|
xmlns:local="using:WinUINotes"
|
||||||
|
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||||
|
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||||
|
xmlns:model="using:WinUINotes.Model"
|
||||||
|
mc:Ignorable="d">
|
||||||
|
|
||||||
|
<Grid Padding="20">
|
||||||
|
<Grid.ColumnDefinitions>
|
||||||
|
<ColumnDefinition Width="*"/>
|
||||||
|
<ColumnDefinition Width="2*"/>
|
||||||
|
</Grid.ColumnDefinitions>
|
||||||
|
|
||||||
|
<Grid Grid.Column="0" Margin="0,0,20,0">
|
||||||
|
<Grid.RowDefinitions>
|
||||||
|
<RowDefinition Height="Auto"/>
|
||||||
|
<RowDefinition Height="Auto"/>
|
||||||
|
<RowDefinition Height="Auto"/>
|
||||||
|
<RowDefinition Height="*"/>
|
||||||
|
</Grid.RowDefinitions>
|
||||||
|
|
||||||
|
<TextBlock Grid.Row="0" Text="已保存项目" FontSize="18" FontWeight="Bold" Margin="0,0,0,10"/>
|
||||||
|
|
||||||
|
<Button Grid.Row="1" Content="新增项目" Click="AddNewProjectButton_Click" HorizontalAlignment="Left" Margin="0,0,0,5"/>
|
||||||
|
|
||||||
|
<TextBox x:Name="FilterTextBox" Grid.Row="2" PlaceholderText="此输入框暂时不提供过滤功能" Margin="0,5,0,10"/>
|
||||||
|
|
||||||
|
<ListView x:Name="ProjectListView" Grid.Row="3" ItemsSource="{x:Bind PhoneAppItems}"
|
||||||
|
SelectionMode="Single" ShowsScrollingPlaceholders="True"
|
||||||
|
BorderBrush="{ThemeResource SystemControlForegroundBaseMediumBrush}" BorderThickness="1"
|
||||||
|
Margin="0,0,0,10"
|
||||||
|
SelectionChanged="ProjectListView_SelectionChanged">
|
||||||
|
<ListView.ItemTemplate>
|
||||||
|
<DataTemplate x:DataType="model:PhoneAppItem">
|
||||||
|
<StackPanel Margin="0,5">
|
||||||
|
<TextBlock FontWeight="SemiBold" FontSize="14">
|
||||||
|
<Run Text="应用程序名称: "/>
|
||||||
|
<Run Text="{x:Bind AppName}"/>
|
||||||
|
</TextBlock>
|
||||||
|
<TextBlock FontSize="12">
|
||||||
|
<Run Text="关联网站: "/>
|
||||||
|
<Run Text="{x:Bind AppUrlsDisplayString}"/>
|
||||||
|
</TextBlock>
|
||||||
|
</StackPanel>
|
||||||
|
</DataTemplate>
|
||||||
|
</ListView.ItemTemplate>
|
||||||
|
</ListView>
|
||||||
|
|
||||||
|
</Grid>
|
||||||
|
|
||||||
|
<StackPanel Grid.Column="1" Padding="20" BorderBrush="{ThemeResource SystemControlForegroundBaseMediumBrush}" BorderThickness="1">
|
||||||
|
<TextBlock Text="应用程序名称:" FontSize="16" FontWeight="SemiBold" Margin="0,0,0,5"/>
|
||||||
|
<TextBox x:Name="AppNameInputTextBox" PlaceholderText="请输入应用程序名称" HorizontalAlignment="Stretch" Margin="0,0,0,10" IsReadOnly="True" />
|
||||||
|
|
||||||
|
<StackPanel Orientation="Horizontal" Margin="0,0,0,10">
|
||||||
|
<TextBlock Text="网站列表:" FontSize="16" FontWeight="SemiBold" VerticalAlignment="Center"/>
|
||||||
|
<Button Content="添加网站" Click="AddWebsiteButton_Click" Margin="10,0,0,0" IsEnabled="False"/>
|
||||||
|
</StackPanel>
|
||||||
|
|
||||||
|
<ScrollViewer VerticalScrollMode="Auto" VerticalScrollBarVisibility="Auto" Height="Auto" MaxHeight="200" Margin="0,0,0,20">
|
||||||
|
<StackPanel x:Name="WebsitesStackPanel" Spacing="10"/>
|
||||||
|
</ScrollViewer>
|
||||||
|
|
||||||
|
<StackPanel Orientation="Horizontal">
|
||||||
|
<Button x:Name="SaveProjectButton" Content="保存项目" Click="SaveProjectButton_Click" HorizontalAlignment="Stretch" Margin="0, 0, 5, 0" />
|
||||||
|
<Button x:Name="EditProjectButton" Content="编辑项目" Click="EditProjectButton_Click" HorizontalAlignment="Stretch" />
|
||||||
|
</StackPanel>
|
||||||
|
|
||||||
|
</StackPanel>
|
||||||
|
</Grid>
|
||||||
|
</Page>
|
||||||
288
WinUINotes/PhoneAppBinderPage.xaml.cs
Normal file
288
WinUINotes/PhoneAppBinderPage.xaml.cs
Normal file
@ -0,0 +1,288 @@
|
|||||||
|
using Microsoft.UI.Xaml;
|
||||||
|
using Microsoft.UI.Xaml.Controls;
|
||||||
|
using Microsoft.UI.Xaml.Controls.Primitives;
|
||||||
|
using Microsoft.UI.Xaml.Data;
|
||||||
|
using Microsoft.UI.Xaml.Input;
|
||||||
|
using Microsoft.UI.Xaml.Media;
|
||||||
|
using Microsoft.UI.Xaml.Navigation;
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Collections.ObjectModel;
|
||||||
|
using System.IO;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Runtime.InteropServices.WindowsRuntime;
|
||||||
|
using Windows.Foundation;
|
||||||
|
using Windows.Foundation.Collections;
|
||||||
|
using WinUINotes.Model;
|
||||||
|
|
||||||
|
// To learn more about WinUI, the WinUI project structure,
|
||||||
|
// and more about our project templates, see: http://aka.ms/winui-project-info.
|
||||||
|
|
||||||
|
namespace WinUINotes;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// An empty page that can be used on its own or navigated to within a Frame.
|
||||||
|
/// </summary>
|
||||||
|
public sealed partial class PhoneAppBinderPage : Page
|
||||||
|
{
|
||||||
|
private int _websiteCounter = 0; // 用于给每个网站输入框一个唯一的标识
|
||||||
|
|
||||||
|
private PhoneAppItem _selectedPhoneAppItem; // 存储当前在ListView中选中的项目
|
||||||
|
|
||||||
|
// 声明一个 ObservableCollection 来存储项目数据,并绑定到 ListView
|
||||||
|
public ObservableCollection<PhoneAppItem> PhoneAppItems { get; set; } = [];
|
||||||
|
|
||||||
|
public PhoneAppBinderPage()
|
||||||
|
{
|
||||||
|
InitializeComponent();
|
||||||
|
this.Loaded += PhoneAppBinderPage_Loaded;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void PhoneAppBinderPage_Loaded(object sender, RoutedEventArgs e)
|
||||||
|
{
|
||||||
|
// 初始添加一个网站输入框
|
||||||
|
AddWebsiteInputControl();
|
||||||
|
SetInputAreaReadOnly(true); // 页面加载时默认只读
|
||||||
|
|
||||||
|
// 可以添加一些示例数据
|
||||||
|
PhoneAppItems.Add(new PhoneAppItem { AppName = "微信", AppUrls = new List<string> { "https://wechat.com" } });
|
||||||
|
PhoneAppItems.Add(new PhoneAppItem { AppName = "支付宝", AppUrls = new List<string> { "https://alipay.com" } });
|
||||||
|
PhoneAppItems.Add(new PhoneAppItem { AppName = "抖音", AppUrls = new List<string> { "https://douyin.com", "https://douyin.net" } });
|
||||||
|
}
|
||||||
|
|
||||||
|
private void AddWebsiteButton_Click(object sender, RoutedEventArgs e)
|
||||||
|
{
|
||||||
|
AddWebsiteInputControl();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void AddWebsiteInputControl(string initialUrl= "", bool isReadOnly = false)
|
||||||
|
{
|
||||||
|
_websiteCounter++;
|
||||||
|
|
||||||
|
// 创建一个包含TextBox和Button的StackPanel
|
||||||
|
StackPanel websiteEntryPanel = new StackPanel
|
||||||
|
{
|
||||||
|
Orientation = Orientation.Horizontal,
|
||||||
|
Spacing = 10,
|
||||||
|
Tag = _websiteCounter, // 用于删除时识别
|
||||||
|
HorizontalAlignment = HorizontalAlignment.Left
|
||||||
|
};
|
||||||
|
|
||||||
|
TextBox websiteTextBox = new TextBox
|
||||||
|
{
|
||||||
|
PlaceholderText = $"请输入网站URL ({_websiteCounter})",
|
||||||
|
Width = 400,
|
||||||
|
// 可以添加名称,便于后续获取数据,但Tag更方便定位
|
||||||
|
// Name = $"WebsiteTextBox_{_websiteCounter}"
|
||||||
|
Text = initialUrl, // 设置初始值
|
||||||
|
IsReadOnly = isReadOnly // 控制只读状态
|
||||||
|
};
|
||||||
|
|
||||||
|
Button deleteButton = new Button
|
||||||
|
{
|
||||||
|
Content = "删除",
|
||||||
|
Background = new SolidColorBrush(Microsoft.UI.Colors.Red), // 设置删除按钮背景色
|
||||||
|
Foreground = new SolidColorBrush(Microsoft.UI.Colors.White), // 设置文字颜色
|
||||||
|
Tag = _websiteCounter, // 用于删除时识别
|
||||||
|
Margin = new Thickness(5, 0, 0, 0) // 添加一些左边距
|
||||||
|
};
|
||||||
|
deleteButton.Click += DeleteWebsiteButton_Click;
|
||||||
|
deleteButton.IsEnabled = !isReadOnly; // 只读时禁用删除按钮
|
||||||
|
|
||||||
|
websiteEntryPanel.Children.Add(websiteTextBox);
|
||||||
|
websiteEntryPanel.Children.Add(deleteButton);
|
||||||
|
|
||||||
|
WebsitesStackPanel.Children.Add(websiteEntryPanel);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void DeleteWebsiteButton_Click(object sender, RoutedEventArgs e)
|
||||||
|
{
|
||||||
|
Button deleteButton = sender as Button;
|
||||||
|
if (deleteButton != null)
|
||||||
|
{
|
||||||
|
int tagToRemove = (int)deleteButton.Tag;
|
||||||
|
|
||||||
|
// 找到对应的StackPanel并移除
|
||||||
|
UIElement panelToRemove = WebsitesStackPanel.Children
|
||||||
|
.FirstOrDefault(child => child is StackPanel sp && (int)sp.Tag == tagToRemove);
|
||||||
|
|
||||||
|
if (panelToRemove != null)
|
||||||
|
{
|
||||||
|
WebsitesStackPanel.Children.Remove(panelToRemove);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void SaveProjectButton_Click(object sender, RoutedEventArgs e)
|
||||||
|
{
|
||||||
|
string appName = AppNameInputTextBox.Text.Trim();
|
||||||
|
List<string> appUrls = new List<string>();
|
||||||
|
|
||||||
|
foreach (UIElement child in WebsitesStackPanel.Children)
|
||||||
|
{
|
||||||
|
if (child is StackPanel websiteEntryPanel)
|
||||||
|
{
|
||||||
|
// 假设第一个子元素是TextBox
|
||||||
|
if (websiteEntryPanel.Children.FirstOrDefault() is TextBox websiteTextBox)
|
||||||
|
{
|
||||||
|
if (!string.IsNullOrWhiteSpace(websiteTextBox.Text))
|
||||||
|
{
|
||||||
|
appUrls.Add(websiteTextBox.Text);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 在这里您可以处理收集到的数据
|
||||||
|
// 例如:显示在消息框中,保存到文件,发送到API等
|
||||||
|
// 检查应用程序名称是否为空
|
||||||
|
if (string.IsNullOrWhiteSpace(appName))
|
||||||
|
{
|
||||||
|
ShowMessageDialog("错误", "应用程序名称不能为空!");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(_selectedPhoneAppItem == null) // 新增项目
|
||||||
|
{
|
||||||
|
PhoneAppItem newAppItem = new PhoneAppItem
|
||||||
|
{
|
||||||
|
AppName = appName,
|
||||||
|
AppUrls = appUrls
|
||||||
|
};
|
||||||
|
PhoneAppItems.Add(newAppItem);
|
||||||
|
ShowMessageDialog("成功", $"项目 '{appName}' 已添加到列表。");
|
||||||
|
}
|
||||||
|
else // 更新现有项目
|
||||||
|
{
|
||||||
|
_selectedPhoneAppItem.AppName = appName;
|
||||||
|
_selectedPhoneAppItem.AppUrls = appUrls;
|
||||||
|
|
||||||
|
// 强制ListView更新Item,因为PhoneAppItem本身没有实现INotifyPropertyChanged
|
||||||
|
// 这里我们通过移除再添加来强制更新UI,或者更优雅的做法是PhoneAppItem实现INotifyPropertyChanged
|
||||||
|
int index = PhoneAppItems.IndexOf(_selectedPhoneAppItem);
|
||||||
|
if (index != -1)
|
||||||
|
{
|
||||||
|
PhoneAppItems.RemoveAt(index);
|
||||||
|
PhoneAppItems.Insert(index, _selectedPhoneAppItem);
|
||||||
|
}
|
||||||
|
ShowMessageDialog("成功", $"项目 '{appName}' 已更新。");
|
||||||
|
}
|
||||||
|
|
||||||
|
ClearInputArea(); // 清空输入区域
|
||||||
|
ProjectListView.SelectedItem = null; // 取消ListView选中状态
|
||||||
|
SetInputAreaReadOnly(true); // 保存后默认只读
|
||||||
|
}
|
||||||
|
|
||||||
|
private void AddNewProjectButton_Click(object sender, RoutedEventArgs e)
|
||||||
|
{
|
||||||
|
// 清空右侧输入区域,准备输入新项目
|
||||||
|
ClearInputArea();
|
||||||
|
ProjectListView.SelectedItem = null; // 取消ListView选中状态
|
||||||
|
_selectedPhoneAppItem = null; // 重置选中项
|
||||||
|
SetInputAreaReadOnly(false); // 启用编辑模式
|
||||||
|
AppNameInputTextBox.Focus(FocusState.Programmatic); // 让应用名称输入框获得焦点
|
||||||
|
}
|
||||||
|
|
||||||
|
// 编辑项目按钮点击事件
|
||||||
|
private void EditProjectButton_Click(object sender, RoutedEventArgs e)
|
||||||
|
{
|
||||||
|
if (_selectedPhoneAppItem == null)
|
||||||
|
{
|
||||||
|
ShowMessageDialog("提示", "请先从列表中选择一个项目进行编辑。");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
SetInputAreaReadOnly(false); // 解除只读状态,允许编辑
|
||||||
|
AppNameInputTextBox.Focus(FocusState.Programmatic); // 让应用名称输入框获得焦点
|
||||||
|
}
|
||||||
|
|
||||||
|
// ListView 选择项改变事件
|
||||||
|
private void ProjectListView_SelectionChanged(object sender, SelectionChangedEventArgs e)
|
||||||
|
{
|
||||||
|
_selectedPhoneAppItem = ProjectListView.SelectedItem as PhoneAppItem;
|
||||||
|
|
||||||
|
if (_selectedPhoneAppItem != null)
|
||||||
|
{
|
||||||
|
// 填充右侧输入框
|
||||||
|
AppNameInputTextBox.Text = _selectedPhoneAppItem.AppName;
|
||||||
|
WebsitesStackPanel.Children.Clear();
|
||||||
|
_websiteCounter = 0; // 重置计数器
|
||||||
|
|
||||||
|
foreach (var url in _selectedPhoneAppItem.AppUrls)
|
||||||
|
{
|
||||||
|
AddWebsiteInputControl(url, true); // 填充并设置为只读
|
||||||
|
}
|
||||||
|
// 如果没有网站,也添加一个只读的空输入框
|
||||||
|
if (_selectedPhoneAppItem.AppUrls.Count == 0)
|
||||||
|
{
|
||||||
|
AddWebsiteInputControl("", true);
|
||||||
|
}
|
||||||
|
|
||||||
|
SetInputAreaReadOnly(true); // 默认只读
|
||||||
|
SaveProjectButton.Content = "更新项目"; // 改变按钮文本
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// 如果没有选中项,清空并设置为只读
|
||||||
|
ClearInputArea();
|
||||||
|
SetInputAreaReadOnly(true);
|
||||||
|
SaveProjectButton.Content = "保存项目"; // 恢复按钮文本
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 清空输入区域的辅助方法
|
||||||
|
private void ClearInputArea()
|
||||||
|
{
|
||||||
|
AppNameInputTextBox.Text = string.Empty;
|
||||||
|
WebsitesStackPanel.Children.Clear(); // 清空所有网站输入框
|
||||||
|
_websiteCounter = 0; // 重置计数器
|
||||||
|
AddWebsiteInputControl(); // 重新添加一个默认的网站输入框
|
||||||
|
}
|
||||||
|
|
||||||
|
// 设置输入区域只读状态的辅助方法
|
||||||
|
private void SetInputAreaReadOnly(bool isReadOnly)
|
||||||
|
{
|
||||||
|
AppNameInputTextBox.IsReadOnly = isReadOnly;
|
||||||
|
// 网站添加按钮
|
||||||
|
// 修复点:将 FindName 返回的 object 转换为 Button 类型
|
||||||
|
Button addWebsiteButton = (WebsitesStackPanel.Parent as ScrollViewer)?.FindName("AddWebsiteButton") as Button;
|
||||||
|
if (addWebsiteButton != null)
|
||||||
|
{
|
||||||
|
addWebsiteButton.IsEnabled = !isReadOnly;
|
||||||
|
}
|
||||||
|
// 迭代所有动态添加的网站输入框和删除按钮
|
||||||
|
foreach (UIElement child in WebsitesStackPanel.Children)
|
||||||
|
{
|
||||||
|
if (child is StackPanel websiteEntryPanel)
|
||||||
|
{
|
||||||
|
if (websiteEntryPanel.Children.FirstOrDefault() is TextBox websiteTextBox)
|
||||||
|
{
|
||||||
|
websiteTextBox.IsReadOnly = isReadOnly;
|
||||||
|
}
|
||||||
|
if (websiteEntryPanel.Children.LastOrDefault() is Button deleteButton)
|
||||||
|
{
|
||||||
|
deleteButton.IsEnabled = !isReadOnly;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
SaveProjectButton.IsEnabled = !isReadOnly || _selectedPhoneAppItem != null; // 保存按钮在编辑模式下可用,或者在有选中项时可用(虽然在只读模式下通常不可用)
|
||||||
|
// 这里的逻辑是:如果不是只读模式,保存按钮可用。如果是只读模式,但有选中项,
|
||||||
|
// 那么只有“编辑项目”被点击后才会解除只读。
|
||||||
|
// 调整为:只有在非只读模式下才允许保存
|
||||||
|
SaveProjectButton.IsEnabled = !isReadOnly;
|
||||||
|
EditProjectButton.IsEnabled = isReadOnly && _selectedPhoneAppItem != null; // 只有在只读模式且有选中项时,编辑按钮才可用
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// 辅助方法:显示消息对话框
|
||||||
|
private async void ShowMessageDialog(string title, string content)
|
||||||
|
{
|
||||||
|
ContentDialog dialog = new ContentDialog
|
||||||
|
{
|
||||||
|
Title = title,
|
||||||
|
Content = content,
|
||||||
|
CloseButtonText = "确定",
|
||||||
|
XamlRoot = this.Content.XamlRoot
|
||||||
|
};
|
||||||
|
await dialog.ShowAsync();
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -48,6 +48,11 @@
|
|||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ProjectReference Include="..\WinUINotes.Grpc\WinUINotes.Grpc.csproj" />
|
<ProjectReference Include="..\WinUINotes.Grpc\WinUINotes.Grpc.csproj" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<Page Update="PhoneAppBinderPage.xaml">
|
||||||
|
<Generator>MSBuild:Compile</Generator>
|
||||||
|
</Page>
|
||||||
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Page Update="FileUploadPage.xaml">
|
<Page Update="FileUploadPage.xaml">
|
||||||
<Generator>MSBuild:Compile</Generator>
|
<Generator>MSBuild:Compile</Generator>
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user