精华内容
下载资源
问答
  • wpf举例
    2021-09-26 17:43:36

    样式代码!

     <UserControl.Resources>

             //定义一个样式
            <Style x:Key="RadButton" TargetType="RadioButton">
                <Setter Property="Margin" Value="12 20 0 0"/>
                <Setter Property="Background" Value="Red" />
                <Setter Property="HorizontalAlignment" Value="Center"/>
                <Setter Property="FontSize" Value="18"/>
                <Setter Property="BorderBrush" Value="#FF0EFCFF"/>
                <Setter Property="Foreground" Value="#FF0EFCFF"/>
                <Setter Property="BorderThickness" Value="2"/>
                <Setter Property="Content" Value="2"/>
                <Setter Property="Template">
                    <Setter.Value>
                        <ControlTemplate TargetType="RadioButton">
                            <Grid>//规定模板 需要通过触发器指定修改属性的标签需要设置一个Name
                                <Border Name="Bord" Width="137" Height="40" Background="Red" BorderBrush="#FF0EFCFF" BorderThickness="2">
                                    <Label Name="Lab" HorizontalAlignment="Center" VerticalAlignment="Center" FontSize="18" Foreground="#FF0EFCFF" Content="{TemplateBinding Content}"></Label>
                                </Border>
                            </Grid>

                            <ControlTemplate.Triggers>
                                <Trigger Property="IsChecked" Value="True">//选中状态修改Bord的背景色
                                    <Setter  Property="Background" Value="#FF6076AD" TargetName="Bord"/>//指定Bord标签修改它的属性
                                </Trigger>
                                <Trigger Property="IsChecked" Value="False">//选中状态修改Bord的背景色
                                    <Setter  Property="Background" Value="Transparent" TargetName="Bord"/>//指定Bord标签修改它的属性
                                </Trigger>
                            </ControlTemplate.Triggers>
                        </ControlTemplate>
                    </Setter.Value>
                </Setter>
            </Style> 
        </UserControl.Resources>

    //测试代码

    ​​​​​​​ <WrapPanel>
                        <RadioButton Style="{DynamicResource RadButton}" GroupName="Radreason" IsChecked="True">单图模式</RadioButton>
                        <RadioButton Style="{DynamicResource RadButton}" GroupName="Radreason">2*2 模式</RadioButton>
                        <RadioButton Style="{DynamicResource RadButton}" GroupName="Radreason">3*3 模式</RadioButton>
                        <!--<Border  Margin="12 20 0 0" Width="137" Height="40" Background="Red"></Border>-->
                        <!--<Button Style="{DynamicResource Button}" Selector.IsSelected="True">单图模式</Button>
                        <Button Style="{DynamicResource Button}">2*2 模式</Button>
                        <Button Style="{DynamicResource Button}">3*3 模式</Button>-->
                    </WrapPanel>

    更多相关内容
  • 在需要用到进度条显示后台运算进度的时候,如果同时进行算法运算以及界面进度条显示的话,那往往是算法计算结束了进度条才显示走条,无法同时进行,如果用到BackgroundWorker的话,就可以完美解决这个问题。
  • WPF中的路由事件

    2021-10-12 21:22:31
    二: WPF的路由事件: Windows消息机制中重要概念之一,最常见的人机交互手段之一 XAML帮助应用管理用户输入,执行不同的行为 引入增强型事件处理系统-Routed Event(路由事件) 事件常常被用于控制更改通知操作 三:...

    一:事件(Event):
    ①Windows消息机制中重要概念之一,最常见的人机交互手段之一
    ②XAML帮助应用管理用户输入,执行不同的行为
    ③引入增强型事件处理系统-Routed Event(路由事件)
    ④事件常常被用于控制更改通知操作

    二: WPF的路由事件:
    Windows消息机制中重要概念之一,最常见的人机交互手段之一 XAML帮助应用管理用户输入,执行不同的行为 引入增强型事件处理系统-Routed Event(路由事件) 事件常常被用于控制更改通知操作

    三:路由事件处理方式:
    1:路由策略
    路由事件使用以下三种路由策略之一: 浮升(冒泡): 调用事件源上的事件处理程序。 路由事件随后会路由到后续的父级元 素,直到到达元素树的根。 大多数路由事件都使用浮升路由策略。 浮升路由事件通 常用于报告来自不同控件或其他 UI 元素的输入或状态变化。 //事件 private void Button_Click(object sender, RoutedEventArgs e) { // 操作代码 } 1 2 1 2 3 4 5 隧道: 最初将调用元素树的根处的事件处理程序。 随后,路由事件将朝着路由事件 的源节点元素(即引发路由事件的元素)方向,沿路由线路传播到后续的子元素。 合成控件的过程中通常会使用或处理隧道路由事件,通过这种方式,可以有意地禁 止复合部件中的事件,或者将其替换为特定于整个控件的事件。 在 WPF 中提供的输 入事件通常是以隧道/浮升对实现的。 隧道事件有时又称作预览事件,这是由该对所 使用的命名约定决定的。 直接: 只有源元素本身才有机会调用处理程序以进行响应。 这类似于 Windows 窗 体用于事件的 “路由”。 但是,与标准 CLR 事件不同,直接路由事件支持类处理 (类 处理将在下一节中介绍) 并可由 EventSetter 和使用 EventTrigger 。
    在这里插入图片描述

    三:事件基础语法
    XAML:示例:
    在这里插入图片描述

    后台C#:
    在这里插入图片描述

    事件系统在WPF中被升级进化称为路由事件(Routed Event),并在其基础上衍 生出命令传递机制。这些机制很大程度上减少了对程序员的束缚,让程序的设计和 实现更加灵活,模块之间的耦合度也进一步降低。

    展开全文
  • 前台定义一个ProgressBar,默认隐藏,进入耗时业务时,将其显示并对其动态赋值。耗时业务结束后,将控件重新隐藏。 1、前台定义ProgressBar ...ProgressBar Height="20" Visibility="Collapsed" ...

    前台定义一个ProgressBar,默认隐藏,进入耗时业务时,将其显示并对其动态赋值。耗时业务结束后,将控件重新隐藏。

    1、前台定义 ProgressBar

            <ProgressBar Height="20"
                         Visibility="Collapsed"
                         HorizontalAlignment="Center"                     
                         Name="pb_import2"
                         Width="100" 
                         pb_import2.Maximum = 100
                         pb_import2.Value = 0 />

    2、后台

            //执行这个方法
            private void beginImport()
            {
                pb_import2.Visibility = Visibility.Visible;
                double value = 0;
                double total = 100d;//得到循环次数
                while (value < total)
                {
                    double jd = Math.Round(((value + 1) * (pb_import.Maximum / total)), 4);
    
                    //这是让进度条连续进度
                    //pb_import2.Dispatcher.Invoke(new Action<DependencyProperty, object>(pb_import2.SetValue),
                    //System.Windows.Threading.DispatcherPriority.Background,
                    //ProgressBar.IsIndeterminateProperty,
                    //true);
    
                    pb_import2.Dispatcher.Invoke(new Action<DependencyProperty, object>(pb_import2.SetValue),
                    System.Windows.Threading.DispatcherPriority.Background,
                    ProgressBar.ValueProperty,
                    jd);
    
    
                    //这里是加数据或费时的操作,这里让它挂起300毫秒
                    Thread.Sleep(100);
                    txtJD.Text = "当前的进度是:" + (value + 1) + "(实际值)" + jd + "(百分比)";
                    value = total== (value+2) ? 0: ++value;
                }
                pb_import2.Visibility = Visibility.Collapsed;
            }

     

    展开全文
  • 但由于某种需求而被后来附加上,也就是把对象放入一个特定环境后对象才具有的属性就称为附加属性,附加属性的作用就是将属性与数据类型解耦,让数据类型的设计更加灵活,举例,一个TextBox被放在不同的布局容器中时...
  • 01—前言 WPF中自带的表格控件是DataGrid,但是格式并不是很美观,我们一般用Dev中类似的控件GridControl来取代,这个控件功能相当强大。 WPF...

    01

    前言

           WPF中自带的表格控件是DataGrid,但是格式并不是很美观,我们一般用

    Dev中类似的控件GridControl来取代,这个控件功能相当强大。

           WPF数据网格(GridControl)是一个数据感知控件,用于以不同的布局显示和编辑数据:表格、树状和卡片。GridControl允许用户管理大量数据(排序、分组、筛选等)。

    66aaa0422350964f897301e197d2e2e6.png

    02


    示例

    <dxg:GridControl  Grid.Row="0" Grid.Column="1" MaxHeight="500" 
                        ItemsSource="{Binding PointList, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" FontSize="14" Grid.RowSpan="3"
                         HorizontalAlignment="Left"  VerticalAlignment="Top"  Margin="0" AllowLiveDataShaping="True" >
                            <dxg:GridControl.View>
                                <dxg:TableView ShowTotalSummary="True" AllowMoveColumnToDropArea="False" AllowGrouping="False" AutoExpandOnDrag="False" ShowDragDropHint="False" ShowGroupPanel="False" AllowColumnMoving="False" AllowResizing="False" RowIndicatorContentTemplate="{StaticResource rowIndicatorContentTemplate}" Header="datashow" />
                            </dxg:GridControl.View>
                            <dxg:GridColumn  Header="ID" FieldName="ID"   Width="80"/>
                            <dxg:GridColumn  Header="X(mm)" FieldName="Col"   Width="80">
                                <dxg:GridColumn.EditSettings>
                                    <dxe:TextEditSettings MaskType="RegEx" Mask="[1-9]|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5]"/>
                                </dxg:GridColumn.EditSettings>
                            </dxg:GridColumn>
                            <dxg:GridColumn  Header="Y(mm)" FieldName="Row"   Width="80"/>
                            <dxg:GridColumn   Header="Z(um)" Binding="{Binding Z}"  Width="80">
                                <dxg:GridColumn.CellTemplate>
                                    <DataTemplate>
                                        <TextBlock Text="{Binding RowData.Row.Z}"></TextBlock>
                                    </DataTemplate>
                                </dxg:GridColumn.CellTemplate>
                            </dxg:GridColumn>
                        </dxg:GridControl>

    运行结果如下:

    740d0797ff92a6930844568d50accba0.png

    03


    讲解

    1. 当GridContol显示时默认有一个拖拽框用以将字段拖入其中进行分组排序,这是一个很强大的功能,如果你不需要这个功能,可以ShowGroupPanel=“false”。

    2. AllowMoveColumnToDropArea="False"是不让用户随意拖拽某一列至垃圾区。

    3. GridControl通过设置TableView的AutoWidth=“Auto”来使Columns占满整个Grid,如果不设置的话有时候你会发现展现出的Grid会多出一列!

    4. dxg:GridColumn不能直接包含FontFamily等在DataGridTextColumn中常见的属性,需要重写Template,重写的时候有两个地方需要绑定,Template绑定的是RowData.Row.XX:

    <dxg:GridColumn   Header="Z(um)" Binding="{Binding Z}"  Width="80">
                                <dxg:GridColumn.CellTemplate>
                                    <DataTemplate>
                                        <TextBlock Text="{Binding RowData.Row.Z}"></TextBlock>
                                    </DataTemplate>
                                </dxg:GridColumn.CellTemplate>
                            </dxg:GridColumn>

    技术群:添加小编微信并备注进群;

    官方文档:

    https://docs.devexpress.com/WPF/6084/controls-and-libraries/data-grid

    参考链接:

    https://www.cnblogs.com/lovecsharp094/p/6413724.html

    小编微信:mm1552923   

    公众号:dotNet编程大全      

    展开全文
  • 分析:所有WPF控件都继承自Control,那么所谓的隐藏Header,实际上就是将显示Header的控件隐藏掉。 本文介绍的方法,个人认为可以适用于其他任何需要隐藏控件的场景——即将高度或宽度置为0。 ————————...
  • WPF_19_菜单

    2022-02-07 16:21:48
    菜单 WPF提供了两个菜单控件:Menu(用于主菜单)和ContextMenu(用于关联到其他元素的弹出菜单)。 Menu类添加了新属性 IsMainMenu,当值为true时(默认值),按下 Alt 键或 F10 键时菜单就会获得焦点。Menu容器还可以使用...
  • WPF 控件专题 ProgressBar控件详解
  • WPF 菜单

    2022-07-17 22:20:17
    WPF菜单
  • 近期在项目希望实现 编辑值与原始数据的 双向转换。 经过调试,这才发现Converter自带该功能。 以下是一个简单案例。 1.创建数据实体 namespace WpfApp_converter.Model { /// <summary>...
  • WPF应用程序开发实例

    2011-05-03 19:32:24
    WPF设计的播放器实例,更好地去学习WPF开发
  • 深入WPF中的图像画刷 ImageBrush 之1——ImageBrush使用举例
  • WPF开发教程

    万次阅读 多人点赞 2019-07-02 23:13:20
    ------WPF开发教程 目录 WPF基础入门.... 3 1. WPF基础之体系结构... 3 2. WPF基础之XAML. 9 3. WPF基础之基元素... 23 4. WPF基础之属性系统... 26 5. WPF基础之路由事件... 33 6. WPF基础之布局系统... ...
  • 应用场景 在很多情况下,我们希望对一些比较私密的文件进行加密,当...因此,今天与大家分享一款自己以前用WPF开发的文件加密解密软件。 准备工作 开发环境:VisualStudio2019;项目类型:WPF应用程序。 效果预览 ...
  • WPF常用的五种绑定方式

    千次阅读 2022-05-21 21:22:04
    1, ElementName 根据控件的x: Name 绑定 2, RelativeSource 相对于本身或者父元素 ...举例说明: 前端代码: DataContext="{Binding Source={StaticResource Locator}, Path=ReportData}" <Grid Grid.Row="1" Gri
  • WPF全称Windows Presentation Foundation,而WPF的核心是P-Presentation,它的意思就是外观、呈现,也就是说在WindowsGUI程序这个尺度上,WPF扮演的是“形”的角色、是程序的外在“形式”,而程序的“内容”仍然是...
  • wpf技术开发编程实例

    2010-11-28 00:07:14
    wpf技术开发编程实例,wpf技术开发编程实例wpf技术开发编程实例
  • WPF_WriteableBitmap类

    2020-12-08 20:32:10
    WPF_WriteableBitmap类 一、前言 在WPF中允许使用Image元素显示位图。可直接设置Image的Source属性(是一个ImageSource类型),则可直接显示位图。 <Image x:Name="myImage" Source="Resources/A.jpg" Stretch=...
  • WPF Trigger Property常用项具体举例

    千次阅读 2017-07-12 14:11:45
    对字体颜色进行更改设置-->        字体点击时候进行偏移     
  • 为了在 WPF 中编辑常规文本,我们有 TextBox,但是如何编辑密码呢?...请允许我举例说明: <Window x:Class="WpfTutorialSamples.Basic_controls.PasswordBoxSample" xmlns="http://schemas.microsoft.co
  • WPF Tag

    2020-12-12 11:41:55
    举例: <Button Content="点击我获得Tag属性的内容" Height="100" Width="150" Tag="这是Tag的内容" Click="ButtonBase_OnClick"></Button> private void ButtonBase_OnClick(object sender, RoutedE
  • wpf ListBox删除

    2020-12-19 12:18:15
    下面分别举例说明序列化和反序列化. DataTable: //序列 ... C#进阶系列——AOP 一.AOP概念(转自) 老规矩,还是先看官方解释:AOP(Aspect-Oriented Programming,面向切面的编程),它是可以通过预编译方式和运行期动态...
  • WPF 资源字典使用方式

    2021-03-10 11:13:46
    WPF资源字典可以自定义样式,并且可以在其他的同类控件中使用相同样式,所以应用比较广泛,而且功能较强,可以自己规定样式,但是相较于Winform会比较复杂。 二、使用步骤 1.建立资源字典 在项目名上右击直接选择...
  • WPF系列教程(十一):鼠标操作

    千次阅读 2021-11-23 14:11:56
    鼠标操作的四个事件: MouseEnter:鼠标移动到元素时触发事件 MouseLeave:鼠标离开元素时触发事件 ...举例,在WPF项目中,捕获鼠标的位置。当鼠标在上方蓝色矩形中移动时,在最下方TextBlock中显示鼠标位置。 ...
  • WPF中,是数据驱动UI,数据是核心,处于主动的,UI从属于数据并表达数据,是被动的。因此,就重要性而言,WPF数据第一,控件第二,尽管如此,控件也占有非常重要的地位。 一、控件 控件的实质: 我们先从UI上...
  • 还有其它方式就不举例了,大家也可以用其它方式实现。 推荐一款WPF MVVM框架开源项目:Newbeecoder.UI Newbeecoder.UI开源项目 Demo下载: Newbeecoder.UI开源项目https://share.weiyun.com/py6W1dcK  
  • WPF Prism(二)Module

    千次阅读 2021-03-02 11:54:47
    WPF Prsim(一)Region WPF Prism(二)Module WPF Prism(三)ViewModelLocator WPF Prism(四)MVVM WPF Prism(五)Navigation WPF Prism(六)Dialog 一、什么是模块... } 就举例这么多,使用哪一种方式因人而异。

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,382
精华内容 952
关键字:

wpf举例