silverlight中的Grid中添加Label控件

//cds.Width=newGridLength(110);//mygd.ColumnDefinitions.Add(cds);//为Grid添加列intlocatio... //cds.Width = new GridLength(110);
//mygd.ColumnDefinitions.Add(cds);//为Grid添加列

int location = 0;
foreach (Dates indates in mydates)
{
RowDefinition rd = new RowDefinition();
gd_dates.RowDefinitions.Add(rd);//为Grid添加行

Label Time_Label = new Label() { Content = "" + indates.Date_l + "", Background = new SolidColorBrush(Colors.White),
HorizontalAlignment = HorizontalAlignment.Stretch ,HorizontalContentAlignment=HorizontalAlignment.Center};
gd_dates.Children.Add(Time_Label); //添加到Grid控件
Time_Label.SetValue(Grid.RowProperty, location); //设置按钮所在Grid控件的行

Time_Label = new Label() { Content= "" + indates.Date_r + "",Tag = "" + indates.Date_start + "",Name = location.ToString(),
Background = new SolidColorBrush(Colors.White),HorizontalAlignment = HorizontalAlignment.Stretch,HorizontalContentAlignment = HorizontalAlignment.Center};
Time_Label.MouseLeftButtonDown += new MouseButtonEventHandler(timedates_MouseLeftButtonDown);
gd_dates.Children.Add(Time_Label); //添加到Grid控件
Time_Label.SetValue(Grid.RowProperty, location); //设置按钮所在Grid控件的行
Time_Label.SetValue(Grid.ColumnProperty, 1); //设置按钮所在Grid控件的列
location++;
}
我这foreache循环向Grid中添加Lable控件,但是速度慢,请问知道速度快的方法?
展开
 我来答
广州方讯科技
2014-12-30 · TA获得超过346个赞
知道小有建树答主
回答量:316
采纳率:100%
帮助的人:223万
展开全部
1、不建议你这种通过代码添加控件的方式,建议改用DataGrid控件,然后直接绑定数据源,这是速度最快的方式;为了实现你要的效果,请使用blend修改DataGrid的样式。
2、如果非要手动添加控件,建议把Label控件换成TextBlock控件,因为TextBlock是更底层的控件,专门用来显示文本的;而Label是更高级的控件,功能更强大,但是它更耗性能。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式