首先,對不起我的英語,再對不起,我是初學者,也許我嘗試做一些不可能的事情。我的目標是創建一個UserControl,以使用不同的參數在不同的Windows /頁面/用戶控件中重復使用代碼。我開發了一個類來打印框以跟蹤視頻中的對象。好吧,我的問題是在編譯時收到以下錯誤:名稱“ mediaBoxes”在當前上下文中不存在如果我更改:<local:MediaBoxes x:Name="mediaBoxes"></local:MediaBoxes>代替<local:MediaBoxes Name="mediaBoxes"></local:MediaBoxes>我收到以下錯誤:類型名稱MediaBoxes在類型MyModule中不存在如果刪除屬性Name并且不調用InitVideo,則所有代碼都可以編譯,并且可以完美執行。.但由于我需要初始化實例,因此播放器始終處于加載狀態。
2 回答

寶慕林4294392
TA貢獻2021條經驗 獲得超8個贊
有些ui東西可以有一個名稱,有些則不能。不過,您無需命名控件。
您的用戶控件是一個框架元素,因此將具有標準事件。其中包括初始化和加載。您可以通過XAML將其中任何一個與事件處理程序掛鉤。
<local:MediaBoxes Initialized="MediaBoxes_Initialized"/>
如果鍵入initialized =,則可以接受它為您提供的存根事件處理程序。

手掌心
TA貢獻1942條經驗 獲得超3個贊
您需要按照以下名稱輸入
<local:MediaBoxes x:Name="mediaBoxes"></local:MediaBoxes>
因為您的用戶控件“ MediaBoxes”和“ Window”位于同一個命名空間(MyModule)中,所以如果您要編寫以下內容
<local:MediaBoxes Name="mediaBoxes"></local:MediaBoxes>
你會得到以下錯誤
Because 'Microsoft.VisualStudio.DesignTools.Xaml.LanguageService.Semantics.Metadata.ReflectionTypeNode' is implemented in the same assembly, you must set the x:Name attribute rather than the Microsoft.VisualStudio.DesignTools.Xaml.LanguageService.Semantics.Metadata.ReflectionPropertyNode attribute.
因此,請按照以下方式為您的用戶控件命名
<local:MediaBoxes x:Name="mediaBoxes"></local:MediaBoxes>
并在后面的代碼中使用以下代碼訪問它
mediaBoxes.InitVideo(mainTask.SearchSelectedClips[0], _detection, _sdkEngine);
- 2 回答
- 0 關注
- 235 瀏覽
添加回答
舉報
0/150
提交
取消