Сначала поместите следующий метод расширения в статический класс (либо поместите класс в то же пространство имен, что и остальная часть вашего кода, либо в пространство имен, включенное в оператор using
в вашем файле кода): -
public static IEnumerable<DependencyObject> Descendents(this DependencyObject root)
{
int count = VisualTreeHelper.GetChildrenCount(root);
for (int i = 0; i < count; i++)
{
var child = VisualTreeHelper.GetChild(root, i);
yield return child;
foreach (var descendent in Descendents(child))
yield return descendent;
}
}
С помощью этого метода расширения вы можете выкопать ScrollViewer внутри текстового поля, отвечающего за полосу прокрутки, и проверить его ComputedVerticalScrollBarVisibility
.
if (textbox1.Descendents().OfType<ScrollViewer>()
.FirstOfDefault().ComputedVerticalScrollBarVisibility == Visibility.Visible)