如何让wpf 中的textbox控件中输入的小数按小数点对齐啊,位数不一样的不要补零,直接对齐?求高手

例如 1.2
23.306
79.01
456.1

1、首先你的字体要设置为等宽或等高的字体,如 Consolas 宋体
<TextBox FontFamily="Consolas,Microsoft YaHei"/>
2、假设以上数据是在同一个 TextBox 中,需要利用代码对每行数值进行左空格补齐 PadLeft 操作
3、如果是每个数字一个 TextBox 那就动点歪点子,比如组合控件:
-- 左右各一个 TextBox,左边的右对齐,右边的左对齐
-- 中间加个 TextBlock,Text = "."
-- 最外面利用 Border 围起来 :-p
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-01-03
前台代码:
<Grid>
<StackPanel Name="sp" Height="100" Width="100">
<TextBox>2.333</TextBox>
<TextBox>20.333</TextBox>
<TextBox>200.333</TextBox>
</StackPanel>
</Grid>
后台代码:
public MainWindow()
{
InitializeComponent();

if (sp.Children.Count > 0)
{
int basenum=0;
int num;
for (int i = 0; i < sp.Children.Count; i++)
{
TextBox tb = sp.Children[i] as TextBox;
num=tb.Text.IndexOf(".");
if (num > basenum)
basenum = num;
}

int number;
for (int i = 0; i < sp.Children.Count; i++)
{
TextBox tb = sp.Children[i] as TextBox;
number=tb.Text.IndexOf(".");
if (number < basenum)
{
for (int j = number; j < basenum; j++)
{
tb.Text=tb.Text.Insert(0, " ");
}
}
}
}本回答被提问者采纳

如何让wpf 中的textbox控件中输入的小数按小数点对齐啊,位数不一样的...
1、首先你的字体要设置为等宽或等高的字体,如 Consolas 宋体 <TextBox FontFamily="Consolas,Microsoft YaHei"\/> 2、假设以上数据是在同一个 TextBox 中,需要利用代码对每行数值进行左空格补齐 PadLeft 操作 3、如果是每个数字一个 TextBox 那就动点歪点子,比如组合控件:-- 左右各一个 TextBox...

相似回答