我在wpf应用程序中创建了一个usercontrol。我像这样使用它:
<Page x:Class="InstallerToolkit.Pages.PageVideosNvr"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:my="clr-namespace:MyProject.UserControls"
mc:Ignorable="d"
d:DesignHeight="525" d:DesignWidth="1050"
Title="PageVideos">
<Grid>
<my:UserControlVideoPlayer Name="VideoPlayer" Margin="559,74,35,155">
</my:UserControlVideoPlayer>
</Grid>
现在在我的C#页面中我想访问它,但当我在c#页面后面的代码中输入其名称时,VideoPlayer对象不会出现。
我要做什么来访问它,因为我想设置它的一个属性。
答案 0 :(得分:3)
将x:Name
提供给您的UserControl,而不是Name
<my:UserControlVideoPlayer x:Name="VideoPlayer" Margin="559,74,35,155">
现在可以使用this.VideoPlayer
后面的代码访问它。
我建议将它作为一个拇指规则,每当引用XAML中的元素时始终使用x:Name
。
请参阅this,了解姓名与x:姓名之间的区别。