在我看来,功能区控件的文本框有问题。我期待一个常见的 TextBox 控件行为:当文本超过宽度时,固定宽度和可见插入符号。但是 RibbonTextBox 控件改变了它的宽度,当文本超过右限制时,溢出是不可见的。
我在一个博客上发现了一个 hack,它做这样的事情:
var img = SearchButton.Template.FindName("image", SearchButton);
if (img != null && img is Image)
(img as Image).Visibility = Visibility.Collapsed;
var lbl = FindTemplateControl<Label>(SearchText);
var border = SearchText.Template.FindName("Bd", SearchText);
if (border != null && border is Border && img != null && lbl != null)
{
(border as Border).Width = SearchText.ActualWidth - (((Image)img).ActualWidth + lbl.ActualWidth);
}
但我真的不想做这样的解决方法。有没有其他更简单的方法来实现简单的 TextBox 行为?