Silverlight 4.0 将usercontrol添加到另一个用户控件
这是我的用户控件:-Silverlight 4.0 将usercontrol添加到另一个用户控件,silverlight-4.0,Silverlight 4.0,这是我的用户控件:- <UserControl xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.
<UserControl
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:ed="http://schemas.microsoft.com/expression/2010/drawing"
mc:Ignorable="d"
x:Class="NiceAnimation.ArcUserControl"
d:DesignWidth="72" d:DesignHeight="72">
<Grid x:Name="LayoutRoot">
<ed:Arc x:Name="arcControl" ArcThickness="20" ArcThicknessUnit="Pixel" EndAngle="360" Fill="#FFFF8700" Stretch="None" Stroke="Black" StartAngle="0" UseLayoutRounding="False" StrokeThickness="0"/>
</Grid>
</UserControl>
在MainPage.xaml.cs中,我正在动态创建用户控件,但没有创建它。即使没有例外也不会被触发
public partial class MainPage : UserControl
{
public MainPage()
{
// Required to initialize variables
InitializeComponent();
this.Loaded += new RoutedEventHandler(MainPage_Loaded);
}
void MainPage_Loaded(object sender, RoutedEventArgs e)
{
Random objRandom = new Random();
for (int intIndex = 0; intIndex < 30; intIndex++)
{
ArcUserControl objArcUserControl = new ArcUserControl();
objArcUserControl.Opacity = 0.7;
//objArcUserControl.SetValue(Canvas.LeftProperty, (double) objRandom.Next(10, 640));
//objArcUserControl.SetValue(Canvas.TopProperty, (double)objRandom.Next(10, 480));
objArcUserControl.MouseEnter += new MouseEventHandler(objArcUserControl_MouseEnter);
//MainCanvas.Children.Add(objArcUserControl);
canLayer1.Children.Add(objArcUserControl);
// canLayer2.Children.Add(objArcUserControl);
// canLayer3.Children.Add(objArcUserControl);
}
}
void objArcUserControl_MouseEnter(object sender, MouseEventArgs e)
{
MessageBox.Show(e.GetPosition(this).ToString());
}
}
public部分类主页面:UserControl
{
公共主页()
{
//需要初始化变量
初始化组件();
this.Loaded+=新的RoutedEventHandler(主页面_-Loaded);
}
已加载无效主页(对象发送器、路由目标)
{
Random objRandom=新随机();
对于(int intIndex=0;intIndex<30;intIndex++)
{
ArcUserControl objArcUserControl=新的ArcUserControl();
对象控制。不透明度=0.7;
//SetValue(Canvas.LeftProperty,(double)objRandom.Next(10640));
//objArcUserControl.SetValue(Canvas.TopProperty,(double)objRandom.Next(10480));
objArcUserControl.MouseEnter+=新的MouseEventHandler(objArcUserControl\u MouseEnter);
//MainCanvas.Children.Add(objArcUserControl);
canLayer1.Children.Add(objArcUserControl);
//canLayer2.Children.Add(objArcUserControl);
//canLayer3.Children.Add(objArcUserControl);
}
}
void objArcUserControl\u MouseEnter(对象发送器,MouseEventArgs e)
{
Show(例如GetPosition(this.ToString());
}
}
我错过了什么?此外,如果我添加textbox
而不是usercontrol,它会工作。
提前感谢:)试着在xaml中添加一个ArcUserControl,看看它是否呈现。什么是canLayer1?谢谢,但usercontrol中只缺少高度和宽度。改变了,成功了!