edit: извините, я думал, что вы хотите, чтобы текстовое поле было видимым, когда у другого есть фокус, я изменил свой первоначальный ответ.
В данный момент я не могу попробовать его, но вы связываете свойство Visibilityвашего текстового поля для свойства SelectionLength другого, используя преобразователь значений:
<UserControl.Resources>
<local:IntToVisibilityConverter x:Key="IntToVisibilityConverter" />
</UserControl.Resources>
<Textbox
x:name="textbox2"
Visibility={Binding SelectionLength,
ElementName="textbox1"
Converter={StaticResource IntToVisibilityConverter}}
/>
реализуйте преобразователь значений следующим образом:
public class IntToVisibilityConverter : IValueConverter
{
public Object Convert(Object value, Type targetType, Object parameter, CultureInfo culture)
{
return (int)value > 0 ? Visibility.Visible : Visibility.Hidden;
}
public Object ConvertBack(Object value, Type targetType, Object parameter, CultureInfo culture)
{
throw new InvalidOperationException("Converter cannot convert back.");
}
}