![](/img/trans.png)
[英]The type or namespace name 'Xaml' does not exist in the namespace 'Windows.UI'
[英]What is causing “The type or namespace name 'UI' does not exist in the namespace” error?
我正在開發UWP應用程序,並且正在嘗試對GridView中SelectedItem的值進行某些操作。 因此,就像我通常使用WPF一樣,我進入XAML並在XAML中鍵入事件名稱,然后讓VS用代碼為我創建事件。
<GridView x:Name="DataGrid1"
ItemClick="dg_ItemClick">
<!-- Just -->
<!-- Some -->
<!-- Normal -->
<!-- XAML -->
</GridView>
VS創建的事件如下所示
private void dg_ItemClick(object sender, Windows.UI.Xaml.Controls.ItemClickEventArgs e)
{
Biz.Customer cust = e.ClickedItem as Biz.Customer;
var messageDialog2 = new MessageDialog(cust.Code, cust.Company);
messageDialog2.ShowAsync();
}
在Windows.UI.Xaml.Controls部分的UI下,我立即得到一條紅色的波浪線。 在頁面頂部有一個using來包括它,並且VS不允許添加任何其他UWP引用。
通過將ItemClickEventArgs更改為RoutedEvenArgs,我可以像在應用程序的其他部分中一樣消除錯誤,但是在這種情況下,我確實需要將ClickedItem作為參數傳遞給后面的代碼。
我剛剛與其他人開始使用UWP,他們說他們在其他cLick事件中也遇到了同樣的問題。 那么,我們都是在做錯什么,還是在應用程序中缺少識別UI所需的東西?
我得到的全部錯誤是:錯誤CS0234名稱空間“應用程序名稱”中不存在類型或名稱空間名稱“ UI”(您是否缺少程序集引用?)
類型或名稱空間名稱“ UI”在名稱空間“應用名稱”中不存在
這意味着您的應用程序中包含Windows
的命名空間。
更改您的名稱空間,或在UWP之前添加前綴:
global::Windows.UI.Xaml.Controls
另請參見如何:使用全局命名空間別名(C#編程指南) 。
我可以看到的錯誤之一是您的處理程序應標記為async
,並且在調用async方法時還應使用await
運算符:
private async void dg_ItemClick(object sender, Windows.UI.Xaml.Controls.ItemClickEventArgs e)
{
Biz.Customer cust = e.ClickedItem as Biz.Customer;
var messageDialog2 = new MessageDialog(cust.Code, cust.Company);
await messageDialog2.ShowAsync();
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.