我需要在修剪文本框文本时显示文本框的工具提示。我使用以下转换器修剪了文本框文本。
public object Convert(object[] values, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
string text = values[0].ToString();
double width = Double.Parse(values[1].ToString());
TextBlock tb = new TextBlock();
StringBuilder sb = new StringBuilder();
foreach (char c in text)
{
sb.Append(c);
tb.Text = sb.ToString();
tb.Measure(new Size(Double.PositiveInfinity, Double.PositiveInfinity));
if (width < tb.DesiredSize.Width + 170)
{
sb.Append("...");
break;
}
}
return sb.ToString();
}
提前致谢。
答案 0 :(得分:-1)
只需制作另一个返回布尔值的转换器,如果必须修剪文本,则为true;如果不是,则根据您发布的转换器中的规格,将其设置为false。 (或者你要绑定的任何类型的属性而不是布尔值,不知道你想在这里设置什么)