马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
计算机发展到这个时候,很多技术日益成熟,想学好一种技术都是不容易的,当你学会用的时候你对它的很多原理可能很不了解) 如今支流的控件模板和款式是援用XAML资本,不外感到没有c#代码完成那末天真,现先容一下代码完成ControlTemplate的办法:
//控件出现的显现内容1(这里为Image)
FrameworkElementFactoryfe=newFrameworkElementFactory(typeof(Image),"Image");
BitmapImagebi=newBitmapImage();
bi.BeginInit();
bi.UriSource=newUri(@"E:ChartControlHanYangChartControlImageMainBackground.jpg");
bi.EndInit();
fe.SetValue(Image.SourceProperty,bi);
//控件出现的显现内容2(这里为TextBox)
FrameworkElementFactoryfe2=newFrameworkElementFactory(typeof(TextBox),"TextBox");
fe2.SetValue(TextBox.WidthProperty,100.0);
fe2.SetValue(TextBox.HeightProperty,100.0);
//把要出现的显现内容封装起来
FrameworkElementFactoryf=newFrameworkElementFactory(typeof(Grid),"Grid");
f.AppendChild(fe);
f.AppendChild(fe2);
//控件模板
ControlTemplatect=newControlTemplate(typeof(Button));
ct.VisualTree=f;
//修正Button的Template
Buttonbtn=newButton();
btn.Template=ct;我认为,可以通过更加简单的首次编译,而增加第二次编译的负担,来提高java的运行效率。只是将java源代码进行简单的等价转换,而不假设编译成某种虚拟机器的目标格式,而由本地编译器针对性的二次编译。 |