powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / Как изменить ширину рамки в коде VB?
4 сообщений из 4, страница 1 из 1
Как изменить ширину рамки в коде VB?
    #37463158
OlegDnepr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
На форме WPF расположены кнопка Button1 и рамка Border1. Задача простая: при нажатии кнопки должны измениться цвет и ширина (BorderThickness) рамки.

VB
Class MainWindow

Private Sub Button1_Click(sender As System.Object, e As System.Windows.RoutedEventArgs) Handles Button1.Click

Border1.BorderBrush = (Brushes.BlueViolet)
Border1.BorderThickness = 10

End Sub
End Class

С цветом вроде получилось, но при попытке изменить ширину рамки привычным способом, как это делалось в VB6, редактор стал ругаться таким сообщением: «Невозможно преобразовать значение типа “Integer” в “System.Windows.Thickness” Перепробовал много вариантов – ничего не получается. Помогите. Заранее благодарен.
...
Рейтинг: 0 / 0
Как изменить ширину рамки в коде VB?
    #37463367
Woldemar665
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
System.Windows.Thickness это класс, который имеет 4 свойства: Top, Bottom, Left, Right. Каждое из которых имеет тип double, и отвечает за толщину соответствующей стороны рамки.
Пример изменения:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
Dim myBorder2 AsNew Border()
myBorder2.BorderBrush = Brushes.SteelBlue
myBorder2.Width =  400 
myBorder2.Height =  400 
Dim myThickness AsNew Thickness()
myThickness.Bottom =  5 
myThickness.Left =  10 
myThickness.Right =  15 
myThickness.Top =  20 
myBorder2.BorderThickness = myThickness
...
Рейтинг: 0 / 0
Как изменить ширину рамки в коде VB?
    #37463675
OlegDnepr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Уважаемый Woldemar665! Благодарю Вас за Ваш ответ. Правда, когда я скопировал Ваш код в мой редактор, он без раздумий подчеркнул волнистыми линиями ВСЕ строчки кода. Присмотревшись, я подумал, что закралась опечатка – отсутствие пропуска между ключевыми словами «As» и «New». После внесения исправления редактор перестал возмущаться, и теперь код стал выглядеть так:

Class MainWindow

Private Sub Button1_Click(sender As System.Object, e As System.Windows.RoutedEventArgs) Handles Button1.Click

Dim myBorder2 As New Border()
myBorder2.BorderBrush = Brushes.SteelBlue
myBorder2.Width = 400
myBorder2.Height = 400

Dim myThickness As New Thickness()
myThickness.Bottom = 5
myThickness.Left = 10
myThickness.Right = 15
myThickness.Top = 20
myBorder2.BorderThickness = myThickness

End Sub
End Class

Но… после запуска программы при нажатии на кнопку НИЧЕГО не происходило. В чём же все-таки причина? Любопытно-с.
...
Рейтинг: 0 / 0
Как изменить ширину рамки в коде VB?
    #37463741
OlegDnepr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ура! Докопал. Окончательный рабочий вариант кода таков:

Class MainWindow

Private Sub Button1_Click(sender As System.Object, e As System.Windows.RoutedEventArgs) Handles Button1.Click

Border1.BorderBrush = Brushes.Red
Border1.Width = 200
Border1.Height = 200

Dim myThickness As New Thickness()
myThickness.Bottom = 5
myThickness.Left = 10
myThickness.Right = 15
myThickness.Top = 20
Border1.BorderThickness = myThickness


End Sub
End Class

Woldemar665! Ежё раз спасибо за правильное направление мысли.
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / Как изменить ширину рамки в коде VB?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]