精华内容
下载资源
问答
  • 1、CefSharp.v75.1.143.0浏览器Demo的完全WPF版,项目中完全使用的是WPF元素,没有引用Winform相关的组件。 2、支持页面通过post请求数据 3、为减少资源体积,代码包中没有CefSharp75的依赖文件,请自己下载放到...
  • WPF的MVVM模式简单示例demo源码,内部文件夹的命名方式虽然为MVC但实际上就是MVVM的模式。 简单说明下代码需要看的地方。 1.View层,xaml里TextBox的绑定方式,以及代码里DataContext的绑定方式。 2.Controller层,...
  • WPF经典DEMO.rar

    热门讨论 2013-11-25 12:29:22
    WPF经典DEMO包含25个实例,由浅入深,主要针对WPF编程的核心概念:数据绑定、依赖属性、数据模板、命令、3D绘制等。
  • WPF悬浮球 自动判断位置,半隐藏,展开,内容旋转 可自由拖动
  • Example for binding an ObservableCollection to a ListView and using async await Task to update the data
  • wpf 写的cefsharp Demo

    2018-11-20 18:09:13
    wpf 写的cefsharp 63版本编写的demo 支持flash,vedio标签,可播放MP4格式视频。里面有x86和x64版本,默认x86版本,改为x64的时候记得更换里面添加的引用路径。支持缓存,支持屏蔽右键菜单,支持开启电脑摄像头和...
  • WPF超级好用,超级漂亮的控件库,包含控件样式和控件封装
  • 1、WPF工程 2、.NET4.0 版本 3、CefSharp 43.0.0.0 4、简单运用,二次开发可加入自己的想要的功能
  • WPFMVVMDemo 订餐系统源代码。
  • WPF管理系统_demo

    2018-08-03 21:07:35
    WPF设计Demo,不用于WinForm窗体,WPF的界面性和可开发性更佳
  • C#-WPF官方Demo

    2019-11-14 09:54:23
    本文件包含227个官方WPF Demo,基于最新的C#6.0版本,常用的WPF控件使用,和各种gui界面的实现技巧,这一个demo足以让你受益匪浅
  • WPF页面布局DEMO

    2018-06-01 14:56:53
    WPF页面布局,界面操作,设计各种样式嵌套,适用各种数据显示方式等等
  • 这里主要是平常学习时候整理的wpf相关源码,还是相当丰富的!比如: com]tbutton.rar 3D相册效果.rar 电影去马赛克工具.zip audioplayer.zip BaiDuYunVS2012源码.zip C#版2048游戏源码.zip icsharpcode-SharpZipLib-...
  • [WPF]MVVM Demo

    2020-02-26 05:10:16
    Demo本身没有什么功能,只是包括一些UI上的逻辑,意在展示MVVM的开发方式和MVVMDemo.SysFramwork.MVVM下核心代码。
  • 简单wpfDemo

    千次阅读 2018-11-10 17:14:07
    工作之余自己学习wpf,小demo记录一下(数据绑定),仅用于学习。 1、简单示例如下 1、界面设计如下,通过文本绑定 Name 属性 ,点击按钮修改对象类中name的值,通过通知事件修改界面的值。 2、People类设计...

    工作之余自己学习wpf,小demo记录一下(数据绑定),仅用于学习。

    1、简单示例如下

    1、界面设计如下,通过文本绑定 Name 属性 ,点击按钮修改对象类中name的值,通过通知事件修改界面的值。

    2、People类设计如下

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.ComponentModel;

    namespace WpfAppDemo
    {
        public class People : INotifyPropertyChanged    //向客户端发出某一属性值已更改的通知
        {
            private int _age;

            public event PropertyChangedEventHandler PropertyChanged;

            private string name;

            public string Name
            {
                get { return name; }
                set
                {
                    name = value;
                    if (PropertyChanged != null)
                    {
                        PropertyChanged(this, new PropertyChangedEventArgs("Name"));
                    }
                }
            }

    }

    }

     

    3、代码实现

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading;
    using System.Threading.Tasks;
    using System.Windows;
    using System.Windows.Controls;
    using System.Windows.Data;
    using System.Windows.Documents;
    using System.Windows.Input;
    using System.Windows.Media;
    using System.Windows.Media.Imaging;
    using System.Windows.Shapes;

    namespace WpfAppDemo
    {
        /// <summary>
        /// BindingDemo.xaml 的交互逻辑
        /// </summary>
        public partial class BindingDemo : Window
        {
            private People _people;
            public BindingDemo()
            {
                InitializeComponent();
                Init();      

            }

            private void Init()
            {
                _people = new People(1, "小红");
                //grid 绑定的对象,会先找本身绑定 textbox如果没有绑定name的值则向上找到grid绑定的对象name属性的值
                this.grid.DataContext = _people;  
            }

            /// <summary>
            /// 修改_people对象的值,界面跟着变化
            /// </summary>
            /// <param name="sender">The source of the event.</param>
            /// <param name="e">The <see cref="RoutedEventArgs"/> instance containing the event data.</param>
            private void Button_Click(object sender, RoutedEventArgs e)
            {
                _people.Name = "test";
            }
        }
    }
     

     

    2、完善示例demo

    1、运行效果如下图:姓名txtbox绑定people中的Name、Age属性,通过按钮修改他们的属性值;选择txtbox绑定listbox选择

    项的值,背景颜色使用listbox选择项的值。选择项2:绑定label的txt值。绑定模式Mode:TwoWay 绑定会将源数据发送到目标,如果目标属性的值发生变化,则会将它们发回给源,OneWay 则不会。

        1)使用 OneWay 绑定时,每当数据源(ListBox)发生变化时,数据就会从数据源流向目标(TextBlock)。

        2)OneTime 绑定也会将数据从源发送到目标;但是,仅当启动了应用程序或 DataContext 发生更改时才会如此操作,因此,它不会侦听源中的更改通知。

        3)OneWayToSource 绑定会将数据从目标发送到源。

        4)TwoWay 绑定会将源数据发送到目标,但如果目标属性的值发生变化,则会将它们发回给源。

    2、前台xaml设置:

    <Window x:Class="WpfAppDemo.BindingDemo" Background="Aqua"
            xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
            xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
            xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
            xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
            xmlns:local="clr-namespace:WpfAppDemo"
            mc:Ignorable="d"
            Title="主界面" Height="809.132" Width="790.635" WindowStartupLocation="CenterScreen">
        <Grid Name="GridInfo" Background="LightSkyBlue">
            <Button Content="修改姓名" BorderBrush="Blue" HorizontalAlignment="Left" Margin="10,60,0,0" VerticalAlignment="Top" 
                    Width="75" Click="Button_Click"/>
            <TextBox Name="TxtName" BorderBrush="Aqua" HorizontalAlignment="Left" Height="23" Margin="47,32,0,0"
                     TextWrapping="Wrap" Text="{Binding Path=Name }" VerticalAlignment="Top" Width="120" />
            <Label Content="姓名" HorizontalAlignment="Left" Margin="2,28,0,0" VerticalAlignment="Top"/>
            <Label Name="LabelTxt" Content="您选择了:" HorizontalAlignment="Left" Margin="139,121,0,0" 
                   VerticalAlignment="Top" RenderTransformOrigin="0.2,3.16"/>
            <TextBox HorizontalAlignment="Left" Height="23" Margin="139,214,0,0" TextWrapping="Wrap"
                     Text="{Binding LabelTxt}" VerticalAlignment="Top" Width="120"/>
            <ListBox x:Name="ListStockName" Background="AntiqueWhite" HorizontalAlignment="Left" Height="159" 
                     Margin="21,121,0,0" VerticalAlignment="Top" Width="88">
                <ListBoxItem Content="Blue"/>
                <ListBoxItem Content="Red"/>
                <ListBoxItem Content="Green"/>
                <ListBoxItem Content="Gray"/>
                <ListBoxItem Content="Cyan"/>
                <ListBoxItem Content="GreenYellow"/>
                <ListBoxItem Content="Orange"/>
            </ListBox>
            <TextBox HorizontalAlignment="Left" Height="23" Margin="139,156,0,0" TextWrapping="Wrap" 
                     Background="{Binding ElementName=ListStockName, Path= SelectedItem.Content}" 
                     Text="{Binding ElementName=ListStockName,Path= SelectedItem.Content,Mode=TwoWay}" VerticalAlignment="Top" Width="120"/>
            <Label x:Name="LabelTxt1" Content="您选择了2:" HorizontalAlignment="Left" Margin="139,189,0,0" VerticalAlignment="Top" RenderTransformOrigin="0.2,3.16"/>
            <TextBox Name="TxtName2" HorizontalAlignment="Left" Height="23" Margin="139,214,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="120"/>
            <TextBox Name="TextBoxAge" HorizontalAlignment="Left" Height="23" Margin="301,28,0,0"
                     Text="{Binding Path=Age,Mode=TwoWay}" TextWrapping="Wrap" VerticalAlignment="Top" Width="120"/>
            <Button Name="ButtonChangeAge" Content="修改年龄" HorizontalAlignment="Left" Margin="301,61,0,0" 
                    VerticalAlignment="Top" Width="75"  Click="ButtonChangeAge_Click"/>
            <Label Content="年龄" HorizontalAlignment="Left" Margin="243,28,0,0" VerticalAlignment="Top" RenderTransformOrigin="-4,0.76"/>
            <!--Text="{Binding  ElementName=LabelTxt1,Path=Content}"-->
        </Grid>
    </Window>
     

    3、后台代码实现:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading;
    using System.Threading.Tasks;
    using System.Windows;
    using System.Windows.Controls;
    using System.Windows.Data;
    using System.Windows.Documents;
    using System.Windows.Input;
    using System.Windows.Media;
    using System.Windows.Media.Imaging;
    using System.Windows.Shapes;

    namespace WpfAppDemo
    {
        /// <summary>
        /// BindingDemo.xaml 的交互逻辑
        /// </summary>
        public partial class BindingDemo : Window
        {
            private People _people;
            public BindingDemo()
            {
                InitializeComponent();
                Init();
            }

            private void Init()
            {
                _people = new People(10, "小明");
                //grid 绑定的对象,会先找本身绑定 textbox如果没有绑定name的值则向上找到grid绑定的对象name属性的值
                GridInfo.DataContext = _people;  //姓名绑定

                TextBoxAge.DataContext = _people;  //姓名绑定,直接控件绑定

                Binding binding = new Binding(); //您选择了2 textbox绑定另一个控件的属性
                binding.Source = LabelTxt1;
                binding.Path = new PropertyPath("Content");
                this.TxtName2.SetBinding(TextBox.TextProperty, binding);   //或者在前台绑定 <!--Text="{Binding  ElementName=LabelTxt1,Path=Content}"--> 

               BindingOperations.ClearBinding(TxtName2, TextBox.TextProperty); //移除绑定BindingOperations同时还提供了ClearAllBindings方法,只需要传入要清除绑定的目标对象的名称,它就会将所有这个对象的绑定移除。
            }

            /// <summary>
            /// 修改_people对象姓名的值,界面跟着变化
            /// </summary>
            /// <param name="sender">The source of the event.</param>
            /// <param name="e">The <see cref="RoutedEventArgs"/> instance containing the event data.</param>
            private void Button_Click(object sender, RoutedEventArgs e)
            {
                _people.Name = "小华";
            }

            /// <summary>
            /// 改变年龄的值,界面跟着变化
            /// </summary>
            /// <param name="sender">The source of the event.</param>
            /// <param name="e">The <see cref="RoutedEventArgs"/> instance containing the event data.</param>
            private void ButtonChangeAge_Click(object sender, RoutedEventArgs e)
            {
                _people.Age = 30;
            }
        }
    }
     

    4、people类

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.ComponentModel;

    namespace WpfAppDemo
    {
        public class People : INotifyPropertyChanged
        {
            private int _age;

            public event PropertyChangedEventHandler PropertyChanged;

            private string name;

            protected void Notify(string propName)
            {
                if (this.PropertyChanged != null)
                {
                    PropertyChanged(this, new PropertyChangedEventArgs(propName));
                }

            }

            public string Name
            {
                get { return name; }
                set
                {
                    name = value;
                    Notify("Name");
                }
            }

            public int Age
            {
                get { return _age; }
                set
                {
                    if (value < 0)
                    {
                        value = 0;
                    }
                    else
                    {
                        _age = value;
                    }
                    Notify("Age");

                }
            }

            public People(int age, string name)
            {
                this.Age = age;
                this.Name = name;
            }

            public string Action()
            {
                if (Age < 20)
                {
                    return "小学生";
                }
                else if (Age < 30 && Age > 20)
                {
                    return "大学";
                }
                else
                {
                    return "教学";
                }

            }
        }
    }
     

     

    展开全文
  • GMap.net的WPF实现demo

    2017-10-15 22:44:59
    gmap.net的一个demo,详细内容参见http://www.cnblogs.com/luxiaoxun/archive/2013/12/07/3463250.html
  • WPF 样式 Demo

    2018-10-19 17:26:03
    WPF 样式 Demo
  • WPF控件frame导航demo

    2019-01-11 10:46:29
    visual studio的WPF表示层技术的frame控件的demo,该控件作用是点击按钮后,跳转到Page页中去
  • WPF 简单命令DEMO

    2018-10-16 12:53:29
    一个简单的WPF 命令,用列子阐述命令如何写命令,和命令的绑定
  • Wpf Page Demo

    2018-08-30 17:30:30
    Wpf 界面延时自动跳转和渐隐渐现动画跳转Demo,包含界面跳转框架
  • WPF纸牌圆形效果Demo

    2015-06-04 14:51:00
    使用WPF高级动画控制以及自定义的排版效果,展现完美动画效果
  • WPF控件样式Demo

    2020-01-09 09:51:05
    平时工作中整理的常用控件样式。 提供 Windows、Button、SwitchButton、ComboBox、DatePicker、ProgressBar、Loading、MessageBox、ListBox、DataGrid、TreeView、DocumentPrint、TabControl、GroupControl等控件的...
  • MVVMLight框架下的wpf登陆程序demo,包含两个界面,一个主界面和一个登陆界面,启动时先启动登陆界面,验证通过后打开主界面。使用WPF下的MVVM框架开发。
  • WPF Demo EX

    2019-09-01 19:42:17
    WPF学习的一些资源,微软推出的基于Windows 的用户界面框架,属于.NET Framework 3.0的一部分。它提供了统一的编程模型、语言和框架,真正做到了分离界面设计人员与开发人员的工作;同时它提供了全新的多媒体交互...
  • WPF系统音量demo

    2018-07-10 10:52:36
    主要功能和接口调用再VolumeHelper中,提供了简单wpf调用demo
  • 一个WPF MVVMdemo

    2017-06-02 17:52:51
    一个自己写的简单的MVVMdemo,没有使用任何依赖注入框架,完全解耦View和ViewModel
  • wpf聊天表情demo

    2018-08-14 17:03:19
    wpf 实现表情包功能demo,简单列子,已封装成用户控件,实际项目可直接引用
  • 最好的WPF界面开发demo,不下要后悔2

    热门讨论 2010-06-02 20:53:03
    最好的WPF界面开发demo,不下要后悔
  • WPF效果DEMO

    2015-09-21 18:43:17
    国外写的一个WPF效果例子,英文的,不过效果有很多,值得一看。 (别人的需要10分,这里5分下载)
  • wpf粒子效果demo

    2018-04-03 18:07:47
    wpf炫酷粒子效果demowpf动画展示,粒子特效动画性能可以接受

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 10,005
精华内容 4,002
关键字:

demowpf