Рубрика: WPF

WPF | Статические и динамические ресурсы

Всем привет! На просторах интернета мало информации о применении статических и динамического использования ресурсов, особенное примеров с Image. Однако StaticResource и DynamicResource достаточно просто использовать, а самое главное, это очень сильно сокращает код, так как основная логика происходящего на загрузку и использования находится в Xaml разметке. Один раз подключив ресурсы к компоненту, мы можем менять […]

Как двигать окном если ее форма не стандартная? C#

Всем привет! Бывает при разработке программы, мы можем создать не стандартную форму приложения, или отключить границы окна. В таком случаи у нас загрузиться программа но мы не сможем ее двигать. Для того что бы создать форму в качестве картинки вам нужно использовать изображение в Background или если у вас геометрическая фигура в виде формы тогда […]

Как сохранить позицию окна формы и ее размер? C#

Всем привет! Думаю вы видели приложения в которые запоминают свою позицию и размер своего окна, и при следующем запуске программы восстанавливают их. Сегодня рассмотрим такой пример, как можно реализовать в своем проекте такую функцию. Первым дело создадим проект, я буду приводить пример для WPF на C#. Но не большая корректировка кода и можно будет использовать […]

Как преобразовать BitmapImage из Bitmap и обратно?

Всем привет, покажу не сколько примеров того как можно привести тип Bitmap к BitmapImage и на оборот. Преобразовать из BitmapImage в Bitmap private Bitmap FromBitmapImagetoBitmap(BitmapImage bitmapImage) { // BitmapImage bitmapImage = new BitmapImage(new Uri(«../Images/test.png», UriKind.Relative)); using(MemoryStream outStream = new MemoryStream()) { BitmapEncoder enc = new BmpBitmapEncoder(); enc.Frames.Add(BitmapFrame.Create(bitmapImage)); enc.Save(outStream); System.Drawing.Bitmap bitmap = new System.Drawing.Bitmap(outStream); return new […]

Как изменить цвет фона Background C# WPF

Всем привет! Сегодня я покажу как можно изменить цвет фона контрола со свойством Background в WPF. Продемонстрирую два примера. Изменения цвета фона RGB btn1.Background = new SolidColorBrush(Color.FromRgb(255,255,255)); Изменения цвета фона Hex btn1.Background = (SolidColorBrush)new BrushConverter().ConvertFromString(«#3CACDC»); Таким образом мы изменили цвет фона кнопки двумя способами.

Как запретить ввод цифр или букв в textBox C#

Всем привет! Сегодня я покажу один из вариантов того, как можно реализовать запрет на ввод информации. Думаю многие из вас сталкивались с тем что в программах невозможен ввод в поле имени, часть символов состоящих из цифры, Такое встречается только в играх, но в реальности то мы знаем, что такого быть не должно. А само имя […]

Как загрузить изображение из ресурсов WPF C#

Всем привет! Меня всегда удивляла логика работы WinForm что не скажешь о WPF. Казалось бы что может быть проще простого использовать ресурсы хранящиеся в проекте. Но не все так просто конечно, хочется использовать те подходы которые реализованы в WinForm но они не работают. Гугление и решение на всех сайтах однотипные, что мне не нравилось и […]

Canvas контейнер компоновки WPF

Canvas – позволяет элементам позиционироваться по фиксированным координатам. Это неподходящий выбор для окон переменного размера, если только вы не собираетесь взвалить на свои плечи значительный объем работы. <Canvas> <TextBlock Canvas.Left=»30″ Canvas.Top=»60″ Height=»100″ Background=»LightCoral» TextWrapping=»WrapWithOverflow» Padding=»10″> Canvas.Left=»30″ Canvas.Top=»60″ </TextBlock> <TextBlock Canvas.Left=»160″ Canvas.Top=»120″ Height=»100″ Width=»200″ Background=»LightGreen» TextWrapping=»WrapWithOverflow» Padding=»10″> Canvas.Left=»260″ Canvas.Top=»120″ </TextBlock> </Canvas>  

UniformGrid контейнер компоновки WPF

UniformGrid – помещает элементы в невидимую таблицу, устанавливая одинаковый размер для всех ячеек. Данный контейнер компоновки используется нечасто. <UniformGrid Rows=»2″ Columns=»2″> <TextBlock Background=»LightGoldenrodYellow» Padding=»10″ Margin=»10″>TextBlock 1</TextBlock> <TextBlock Background=»LightBlue» Padding=»10″ Margin=»10″>TextBlock 2</TextBlock> <TextBlock Background=»LightGray» Padding=»10″ Margin=»10″>TextBlock 3</TextBlock> <TextBlock Background=»LightSteelBlue» Padding=»10″ Margin=»10″>TextBlock 4</TextBlock> </UniformGrid>  

WrapPanel контейнер компоновки WPF

WrapPanel – размещает элементы в последовательностях строк с переносом. В горизонтальной ориентации WrapPanel располагает элементы в строке слева направо, затем переходит к следующей строке. В вертикальной ориентации WrapPanel располагает элементы сверху вниз, используя дополнительные колонки для дополнения оставшихся элементов. <WrapPanel Orientation=»Vertical»> <TextBlock Background=»LightGoldenrodYellow» Padding=»10″ Margin=»10″>TextBlock 1</TextBlock> <TextBlock Background=»LightBlue» Padding=»10″ Margin=»10″>TextBlock 2</TextBlock> <TextBlock Background=»LightGray» Padding=»10″ Margin=»10″>TextBlock […]