Я разрабатываю приложение Windows 10 UWP в C#, которое я также хочу запустить в Windows 10 Mobile. Я установил минимальную версию SDK на 10.0.10240.0, и она запускается просто отлично. Тем не менее, он вылетает при навигации на страницу XAML со следующим контентом: < /p>
x:Class="Dav_Connector.EditAccountPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:Dav_Connector"
xmlns:vm="using:Dav_Connector.ViewModel"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d"
Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
Name
Url
Username
Password
Account Type
Sync Type
Save
< /code>
Это код-behind: < /p>
using Dav_Connector.ViewModel;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Runtime.InteropServices.WindowsRuntime;
using Windows.Foundation;
using Windows.Foundation.Collections;
using Windows.UI.Xaml;
using Windows.UI.Xaml.Controls;
using Windows.UI.Xaml.Controls.Primitives;
using Windows.UI.Xaml.Data;
using Windows.UI.Xaml.Input;
using Windows.UI.Xaml.Media;
using Windows.UI.Xaml.Navigation;
// Die Elementvorlage "Leere Seite" wird unter https://go.microsoft.com/fwlink/?LinkId=234238 dokumentiert.
namespace Dav_Connector
{
///
/// Eine leere Seite, die eigenständig verwendet oder zu der innerhalb eines Rahmens navigiert werden kann.
///
public sealed partial class EditAccountPage : Page
{
public EditAccountPage()
{
this.InitializeComponent();
}
protected override void OnNavigatedTo(NavigationEventArgs e)
{
base.OnNavigatedTo(e);
(DataContext as EditAccountPageViewModel).AccountEditCompleted += EditAccountPage_AccountEditCompleted;
if (e.Parameter is Guid)
{
((EditAccountPageViewModel)DataContext).Load((Guid)e.Parameter);
}
else
{
((EditAccountPageViewModel)DataContext).Load(null);
}
}
private void EditAccountPage_AccountEditCompleted(object sender, EventArgs e)
{
Frame.GoBack();
}
protected override void OnNavigatingFrom(NavigatingCancelEventArgs e)
{
(DataContext as EditAccountPageViewModel).AccountEditCompleted -= EditAccountPage_AccountEditCompleted;
base.OnNavigatingFrom(e);
}
}
}
< /code>
И это ViewModel: < /p>
using AsyncAwaitBestPractices.MVVM;
using Dav_Connector.Library;
using Dav_Connector.Library.Model;
using Microsoft.EntityFrameworkCore;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Windows.Security.Credentials;
using Windows.UI.Popups;
namespace Dav_Connector.ViewModel
{
class EditAccountPageViewModel : BindableBase
{
public event EventHandler AccountEditCompleted;
Account _account = null;
public Account Account
{
get => _account;
set => SetProperty(ref _account, value);
}
public AccountType[] AccountTypes
{
get
{
using (var dbContext = new DavConnectorDbContext())
{
return dbContext.AccountTypes.AsNoTracking().ToArray();
}
}
}
public SyncType[] SyncTypes
{
get
{
using (var dbContext = new DavConnectorDbContext())
{
return dbContext.SyncTypes.AsNoTracking().ToArray();
}
}
}
public void Load(Guid? id)
{
if (id != null)
using (var dbContext = new DavConnectorDbContext())
{
Account = dbContext.Accounts.AsNoTracking().SingleOrDefault(acc => acc.Id == id);
}
if (Account == null)
Account = new Account { Id = Guid.NewGuid() };
}
public async Task SaveAsync()
{
using (var dbContext = new DavConnectorDbContext())
{
await dbContext.Accounts.Where(acc => acc.Id == Account.Id).Include(acc => acc.SyncType).Include(acc => acc.AccountType).LoadAsync();
await dbContext.AccountTypes.LoadAsync();
await dbContext.SyncTypes.LoadAsync();
if (await dbContext.Accounts.AnyAsync(acc => acc.Id == Account.Id))
dbContext.Accounts.Update(Account);
else
dbContext.Accounts.Add(Account);
try
{
await dbContext.SaveChangesAsync();
}
catch(Exception ex)
{
var dialog = new MessageDialog(ex.Message, "Error while Saving");
await dialog.ShowAsync();
}
}
AccountEditCompleted?.Invoke(this, EventArgs.Empty);
}
public EditAccountPageViewModel()
{
SaveCommand = new AsyncCommand(SaveAsync);
}
public IAsyncCommand SaveCommand { get; }
}
}
он бросает windows.ui.xaml.markup.xamlparseexception без какого -либо иннрексии или каких -либо указаний относительно того, что могло бы пойти не так. Страница открывается, как и ожидалось на рабочем столе. Весь проект можно найти здесь, если это необходимо.
Я разрабатываю приложение Windows 10 UWP в C#, которое я также хочу запустить в Windows 10 Mobile. Я установил минимальную версию SDK на 10.0.10240.0, и она запускается просто отлично. Тем не менее, он вылетает при навигации на страницу XAML со следующим контентом: < /p> [code] x:Class="Dav_Connector.EditAccountPage" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:local="using:Dav_Connector" xmlns:vm="using:Dav_Connector.ViewModel" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="d" Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
Name
Url
Username
Password
Account Type
Sync Type
Save
< /code> Это код-behind: < /p> using Dav_Connector.ViewModel; using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Runtime.InteropServices.WindowsRuntime; using Windows.Foundation; using Windows.Foundation.Collections; using Windows.UI.Xaml; using Windows.UI.Xaml.Controls; using Windows.UI.Xaml.Controls.Primitives; using Windows.UI.Xaml.Data; using Windows.UI.Xaml.Input; using Windows.UI.Xaml.Media; using Windows.UI.Xaml.Navigation;
// Die Elementvorlage "Leere Seite" wird unter https://go.microsoft.com/fwlink/?LinkId=234238 dokumentiert.
namespace Dav_Connector { /// /// Eine leere Seite, die eigenständig verwendet oder zu der innerhalb eines Rahmens navigiert werden kann. /// public sealed partial class EditAccountPage : Page { public EditAccountPage() { this.InitializeComponent(); } protected override void OnNavigatedTo(NavigationEventArgs e) { base.OnNavigatedTo(e); (DataContext as EditAccountPageViewModel).AccountEditCompleted += EditAccountPage_AccountEditCompleted; if (e.Parameter is Guid) { ((EditAccountPageViewModel)DataContext).Load((Guid)e.Parameter); } else { ((EditAccountPageViewModel)DataContext).Load(null); } }
protected override void OnNavigatingFrom(NavigatingCancelEventArgs e) { (DataContext as EditAccountPageViewModel).AccountEditCompleted -= EditAccountPage_AccountEditCompleted; base.OnNavigatingFrom(e); } } } < /code> И это ViewModel: < /p> using AsyncAwaitBestPractices.MVVM; using Dav_Connector.Library; using Dav_Connector.Library.Model; using Microsoft.EntityFrameworkCore; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using Windows.Security.Credentials; using Windows.UI.Popups;
namespace Dav_Connector.ViewModel { class EditAccountPageViewModel : BindableBase { public event EventHandler AccountEditCompleted; Account _account = null; public Account Account { get => _account; set => SetProperty(ref _account, value); } public AccountType[] AccountTypes { get { using (var dbContext = new DavConnectorDbContext()) { return dbContext.AccountTypes.AsNoTracking().ToArray(); } } } public SyncType[] SyncTypes { get { using (var dbContext = new DavConnectorDbContext()) { return dbContext.SyncTypes.AsNoTracking().ToArray(); } } }
public void Load(Guid? id) { if (id != null) using (var dbContext = new DavConnectorDbContext()) { Account = dbContext.Accounts.AsNoTracking().SingleOrDefault(acc => acc.Id == id); }
if (Account == null) Account = new Account { Id = Guid.NewGuid() }; } public async Task SaveAsync() { using (var dbContext = new DavConnectorDbContext()) { await dbContext.Accounts.Where(acc => acc.Id == Account.Id).Include(acc => acc.SyncType).Include(acc => acc.AccountType).LoadAsync(); await dbContext.AccountTypes.LoadAsync(); await dbContext.SyncTypes.LoadAsync(); if (await dbContext.Accounts.AnyAsync(acc => acc.Id == Account.Id)) dbContext.Accounts.Update(Account); else dbContext.Accounts.Add(Account); try { await dbContext.SaveChangesAsync(); } catch(Exception ex) { var dialog = new MessageDialog(ex.Message, "Error while Saving"); await dialog.ShowAsync(); } } AccountEditCompleted?.Invoke(this, EventArgs.Empty); } public EditAccountPageViewModel() { SaveCommand = new AsyncCommand(SaveAsync); } public IAsyncCommand SaveCommand { get; } } } [/code] он бросает windows.ui.xaml.markup.xamlparseexception без какого -либо иннрексии или каких -либо указаний относительно того, что могло бы пойти не так. Страница открывается, как и ожидалось на рабочем столе. Весь проект можно найти здесь, если это необходимо.
Я разрабатываю приложение Windows 10 UWP в C#, которое я также хочу запустить в Windows 10 Mobile. Я установил минимальную версию SDK на 10.0.10240.0, и она запускается просто отлично. Тем не менее, он вылетает при навигации на страницу XAML со...
У меня есть приложение-служба Windows для добавления пользовательских значков в файлы и каталоги с помощью библиотеки .Net Framework 4.5.2 SharpShell.
Когда я пытаюсь создать файл Microsoft Excel на рабочем столе, Значок файла перемещается в позицию...
Я сделал простой веб -сайт, на котором я хотел скрыть и показать div, используя JS
Все работает нормально на рабочем столе, даже когда окно уменьшено
, но когда я пробую его на мобильных устройствах, навигационная строка начинает Работайте по...
Я сделал простой веб -сайт, на котором я хотел скрыть и показать div, используя JS
Все работает нормально на рабочем столе, даже когда окно уменьшено
, но когда я пробую его на мобильных устройствах, навигационная строка начинает Работайте по...
Я сделал простой веб -сайт, на котором я хотел скрыть и показать div, используя JS
Все работает нормально на рабочем столе, даже когда окно уменьшено
, но когда я пробую его на мобильных устройствах, навигационная строка начинает Работайте по...