none
Colordialog/canvas RRS feed

  • Вопрос

  • Проект впф, колордиалог появляется вот так

    Dim dialog = New System.Windows.Forms.ColorDialog
        Dim result As System.Windows.Forms.DialogResult = dialog.ShowDialog()
    

    теперь не могу сделать так чтобы фон канваса изменился в зависимости от выбранного цвета, помогите пожалуйста!

    30 июля 2011 г. 7:48

Ответы

  • Фон в WPF задается кистями (обычная, градиентная, растровая и т.д.). Самый простой вариант это обычная SolidColorBrush.

    Делаете так:

     Dim cd As New Forms.ColorDialog
     If cd.ShowDialog = Forms.DialogResult.OK Then
    MyCanvas.Background = New SolidColorBrush(Color.FromRgb(cd.Color.R, cd.Color.G, cd.Color.B))
    End If
    


    Такая заморочка нужна, так как тип Color у ColorDialog отличается от обычного WPF'ского

    И, к слову, DialogResult нужен, что бы узнать какая кнопка была нажата (OK, Cancel) и не хранит в себе выбранный цвет, поэтому не обязательно под него выделять переменную,а достаточно сделать так как в приведенном мною коде

     

     

    • Помечено в качестве ответа Program-s.g 30 июля 2011 г. 10:25
    30 июля 2011 г. 9:29
    Отвечающий