我有一个 Windows 项目 (C#),我们将用于阿拉伯。正如我们所知,遵循从右到左机制的国家。如何以 RTL(从右到左)格式在面板中移动我的所有控件位置。我已将属性 'RightToLeft' 和 'RightToLeftLayout' 设置为 true,但它仅在表单内移动控件而不是面板。看例子
当控件移动时,我已经应用了所述属性,这些属性只是在窗体上,但面板内的控件保持原样。
你可以使用这个控件:)
class MyPanel:Panel
{
private bool myRightToLeftLayout=false;
public bool MyRightToLeftLayout
{
get { return myRightToLeftLayout; }
set
{
if (value != myRightToLeftLayout)
{
foreach (Control item in base.Controls)
{
try
{
item.RightToLeft = value==true?RightToLeft.No:RightToLeft.Yes;
item.Location = new System.Drawing.Point(base.Size.Width - item.Size.Width - item.Location.X, item.Location.Y);
}
catch { }
}
myRightToLeftLayout = value;
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
结果是这样的
MyRightToLeftLayout = false
MyRightToLeftLayout = true
归档时间: |
|
查看次数: |
1153 次 |
最近记录: |