c1messagebox,是第三方控件,有确定、取消、是、否,4个按钮可供选择。
可是发现,本地化的时候,显示要么是中文、要么是英文,无法做到本地化的目的(当切换语言的时候)。
下面是方法:
1 创建资源文件,定义这4个按钮的中文和英文的信息
2 创建Style,赋值给c1messagebox样式,做成一个方法A
3 在调用show方法之前,调用方法A
备注:如果需要全局都本地化,那么需要在登录的时候,执行一次这个方法A。
参考代码如下:
internal static void SetMessageboxContent()
{
Style style = new Style(typeof(C1MessageBoxContent));
style.Setters.Add(new Setter(C1MessageBoxContent.OKTextProperty, Resource.language.MessageboxOK));
style.Setters.Add(new Setter(C1MessageBoxContent.CancelTextProperty, Resource.language.MessageboxCancel));
style.Setters.Add(new Setter(C1MessageBoxContent.YesTextProperty, Resource.language.MessageboxYes));
style.Setters.Add(new Setter(C1MessageBoxContent.NoTextProperty, Resource.language.MessageboxNo));
C1MessageBox.ContentStyle = style;
}
C1MessageBox控件的本地化实现
本文介绍了如何解决C1Messagebox在本地化时只能显示中文或英文的问题。通过创建资源文件定义按钮文本,然后创建Style并设置给C1MessageBoxContent,再在调用显示方法前执行设置方法,即可实现在语言切换时的本地化显示。提供了一个内部静态方法SetMessageboxContent作为示例。
2万+

被折叠的 条评论
为什么被折叠?



