转载

Ay.Framework.WPF 进度一览[2015-06-05更新 - AyColorPickerDialog和AySlider完成] ( 官方群号 3...

Ay.Framework.WPF 进度一览[2015-06-05更新 - AyColorPickerDialog和AySlider完成] ( 官方群号  3... (QQ群 337468846)

待完成

AySlider ,日期, 颜色选择 ,视频背景,三角PopUp

AyCheckbox,List,自动升级组件

AyRadioBox,List

AyDataGrid

AyComboTree

AyComboGrid

AyRemoteImage

AyFileUpload

多行文本框

待解决问题,processbar 运动不均匀

换色,换控件的实现,右上角换成path

以下控件已经完成

2015-6-5 16:01:17

像素化 Path高清带边框,实现多彩

Ay.Framework.WPF 进度一览[2015-06-05更新 - AyColorPickerDialog和AySlider完成] ( 官方群号  3...

2015-6-3 18:37:27

Ay.Framework.WPF 进度一览[2015-06-05更新 - AyColorPickerDialog和AySlider完成] ( 官方群号  3... AyColorPicker和AyColorPickerDialog 

Ay.Framework.WPF 进度一览[2015-06-05更新 - AyColorPickerDialog和AySlider完成] ( 官方群号  3...

支持透明色, 尚未增加推荐色位属性

2015-6-2 15:42:54

AySlider,  建议 横向模式,不设置height,   纵向模式不设置 Width

属性 默认值 使用说明
Icon(string类型,来自AyIconAll的Icon,支持path,ico,png,jpg,gif,fontawesome写法 ) path_Ellipse 详情见AyIconAll用法
ThumbStroke (Brush类型) 跟着主题走,可修改,FF84BDDA,资源Key = HoverButtonBorderColor 调整AyIconAll的Stroke
ThumbFill (Brush类型) White 调整AyIconAll的Foreground
ThumbStrokeThickness(double类型) 1.0 调整AyIconAll的StrokeThickness
ThumbWidth 调整AyIconAll的Width
ThumbHeight 22.00 调整AyIconAll的Height
ToolTipOpacity 调整 值提示框的透明度,调整为0 则提示不显示
ToolTipRadius 5.0 值提示框圆角
ThumbShadowStroke Black Thumb的阴影色,无法设置,自动根据ThumbStroke计算的
IconFontSize 调整AyIconAll的FontSize
CompletedFill 跟着主题走,可修改,FF7Eb4EA 资源Key=Ay.SliderThumb.Track.Selected.Background
UnCompletedFill 跟着主题走,可修改,B7B7B7资源Key=Ay.SliderThumb.Track.Static.Background
HighlightFill 跟着主题走,可修改,FF226584资源Key=Ay.SliderThumb.PART_SelectionRange.Fill 高亮范围颜色设置,Slider默认设置,例如SelectionStart="10"  SelectionEnd="40" HighlightFill="YellowGreen" Minimum="0" Maximum="100" Value="50" 其中 IsSnapToTickEnabled="True"可设置为整数移动
TrackWidth 纵向Slider时候,就是轨道的宽度,横向时候就是Slider的轨道的高度

效果图预览:

Ay.Framework.WPF 进度一览[2015-06-05更新 - AyColorPickerDialog和AySlider完成] ( 官方群号  3...

代码:

<control:AyWindow x:Class="WpfApplication11.Window5"   xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"   xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"   xmlns:control="clr-namespace:Ay.Framework.WPF.Controls;assembly=Ay.Framework.WPF"      xmlns:Behaviors="clr-namespace:Ay.Framework.WPF.Behaviors;assembly=Ay.Framework.WPF"    Title="Ay的Slider控件" Height="400" Width="600" WindowStartupLocation="CenterScreen"   >  <Grid x:Name="LayoutRoot">   <Border Background="#CCFFFFFF" Padding="5" >    <Canvas>     <control:AySlider HorizontalAlignment="Left"   IsSnapToTickEnabled="True"  SmallChange="1" VerticalAlignment="Top" Height="30" Width="201"            Minimum="0" Maximum="100" Value="50"           Icon="path_TickTop"           ThumbHeight="25" ThumbWidth="12" Canvas.Left="28" Canvas.Top="10"/>     <control:AySlider HorizontalAlignment="Left" IsSnapToTickEnabled="True" VerticalAlignment="Top" Height="218" Orientation="Vertical"            Minimum="0" Maximum="100" Value="50"  IsSelectionRangeEnabled="True" Canvas.Left="28" Canvas.Top="60"/>     <control:AySlider HorizontalAlignment="Left" IsSnapToTickEnabled="True" VerticalAlignment="Top" Height="218" Orientation="Vertical"      Minimum="0" Maximum="100" Value="50"  IsSelectionRangeEnabled="True" Canvas.Left="85" Canvas.Top="60" Icon="pack://application:,,,/Ay.Framework.WPF;component/Resources/ay.gif"/>     <control:AySlider x:Name="as1" HorizontalAlignment="Left" IsSnapToTickEnabled="True" VerticalAlignment="Top" Height="218"  Orientation="Vertical"      Minimum="0" Maximum="100" Value="50"  IsSelectionRangeEnabled="True" Canvas.Left="152" Canvas.Top="60" Icon="fa_book" IconFontSize="40" ThumbHeight="40" ThumbWidth="40"/>     <control:AySlider x:Name="as2" HorizontalAlignment="Left" IsSnapToTickEnabled="True" VerticalAlignment="Top" Height="218"  Orientation="Vertical" TrackWidth="20" CompletedFill="#EF1A6A" UnCompletedFill="#FFD7E6" ThumbStroke="#72B504" ThumbFill="#C9FBC2"      Minimum="0" Maximum="100" Value="50"  IsSelectionRangeEnabled="True" Canvas.Left="216" Canvas.Top="60" Icon="fa_book" IconFontSize="40" ThumbHeight="40" ThumbWidth="50"/>     <control:AyComboBox  VerticalAlignment="Center" Width="120" PanelMaxHeight="200" x:Name="cboFontAweEnum" SelectionChanged="cboFontAweEnum_SelectionChanged" Canvas.Left="109" Canvas.Top="295"/>     <control:AySlider HorizontalAlignment="Left" ToolTipRadius="10"   IsSnapToTickEnabled="True"  SmallChange="1" VerticalAlignment="Top"  Width="201"       Minimum="0" Maximum="100" Value="50" ThumbStroke="#F23C3C"      Icon="/Ay.Framework.WPF;component/resources/demo/sliderdemo.png" CompletedFill="#DE0A0A"      ThumbHeight="32" ThumbWidth="32" Canvas.Left="300" Canvas.Top="31"/>     <control:AySlider HorizontalAlignment="Left" ToolTipOpacity="0.5"   IsSnapToTickEnabled="True"  SmallChange="1" VerticalAlignment="Top"  Width="201"  CompletedFill="#ECCF12" ThumbWidth="70" ThumbHeight="80"  IconFontSize="40" ThumbStroke="#EF9F69"      Minimum="0" Maximum="100" Value="50"      Icon="path_ay"        Canvas.Left="300" Canvas.Top="91"/>     <control:AySlider HorizontalAlignment="Left" ToolTipOpacity="1"   IsSnapToTickEnabled="True"  SmallChange="1" VerticalAlignment="Top"  Width="201" ThumbWidth="40" ThumbHeight="40"             IconFontSize="40" ThumbStroke="#F78F16" UnCompletedFill="#F4D9A4"      Minimum="0" Maximum="100" Value="40" TrackWidth="18"       Icon="fa_star"      Canvas.Left="300" Canvas.Top="165">      <control:AySlider.ThumbFill>       <RadialGradientBrush>        <GradientStop Color="#FFFBAC39" Offset="0"/>        <GradientStop Color="#FFF0BD38" Offset="1"/>        <GradientStop Color="#FFFB7200" Offset="0.653"/>       </RadialGradientBrush>      </control:AySlider.ThumbFill>      <control:AySlider.CompletedFill>       <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">        <GradientStop Color="#FFBEF014" Offset="0"/>        <GradientStop Color="#FFD3F112" Offset="1"/>        <GradientStop Color="#FF92BB07" Offset="0.516"/>       </LinearGradientBrush>      </control:AySlider.CompletedFill>     </control:AySlider>     <!--<control:AySlider HorizontalAlignment="Left"  Margin="300,0,0,0" IsSnapToTickEnabled="True" VerticalAlignment="Top" Height="218.112" Width="39.042" Orientation="Vertical"           SelectionStart="10"  SelectionEnd="40" HighlightFill="YellowGreen" Minimum="0" Maximum="100" Value="50"  IsSelectionRangeEnabled="True"/>-->    </Canvas>   </Border>  </Grid> </control:AyWindow> 

2015-06-01 09:00:41

优化AyTreeViewItemModel,使得创建子AyTreeViewItemModel时候无需 children.add了,指定父类自动是父类的子类

例如这样的子类,直接指定AyTreeView的itemssource即可

public ObservableCollection<AyTreeViewItemModel> CreateTreeData() {  ObservableCollection<AyTreeViewItemModel> list = new ObservableCollection<AyTreeViewItemModel>();  AyTreeViewItemModel root = new AyTreeViewItemModel("热力公司", "fa-bank", null, true);  list.Add(root);  AyTreeViewItemModel vfen = new AyTreeViewItemModel("V分公司", "fa-building", root, false);  AyTreeViewItemModel vfen1 = new AyTreeViewItemModel("V换热站", "fa-home ", vfen, false);  AyTreeViewItemModel changfen = new AyTreeViewItemModel("长丰片区", "fa-building", root, true);  AyTreeViewItemModel changfen1 = new AyTreeViewItemModel("长丰换热站", "fa-home", changfen, false);  AyTreeViewItemModel changfen1_1 = new AyTreeViewItemModel("长丰小区", "fa-binoculars", changfen1, false);  AyTreeViewItemModel changfen1_1_1 = new AyTreeViewItemModel("长丰楼", "fa-building-o", changfen1_1, false);  AyTreeViewItemModel changfen1_1_1_1 = new AyTreeViewItemModel("长丰单元", "fa-keyboard-o", changfen1_1_1, false);  AyTreeViewItemModel changfen1_1_1_1_1 = new AyTreeViewItemModel("106111", "fa-cc-discover", changfen1_1_1_1, false);  AyTreeViewItemModel changfen1_1_1_1_2 = new AyTreeViewItemModel("A11", "fa-cc-discover", changfen1_1_1_1, false);  AyTreeViewItemModel changfen1_1_1_1_3 = new AyTreeViewItemModel("108111", "fa-cc-discover", changfen1_1_1_1, false);  AyTreeViewItemModel changfen1_1_1_1_4 = new AyTreeViewItemModel("108112", "fa-cc-discover", changfen1_1_1_1, false);  AyTreeViewItemModel changfen1_1_1_1_5 = new AyTreeViewItemModel("10822", "fa-cc-discover", changfen1_1_1_1, false);  AyTreeViewItemModel changfen1_1_1_1_6 = new AyTreeViewItemModel("109111", "fa-cc-discover", changfen1_1_1_1, false);  AyTreeViewItemModel changfen1_1_1_1_7 = new AyTreeViewItemModel("10922", "fa-cc-discover", changfen1_1_1_1, false);  AyTreeViewItemModel changfen1_1_1_1_8 = new AyTreeViewItemModel("110111", "fa-cc-discover", changfen1_1_1_1, false);  AyTreeViewItemModel changfen1_1_1_1_9 = new AyTreeViewItemModel("14122", "fa-cc-discover", changfen1_1_1_1, false);  AyTreeViewItemModel changfen1_1_1_1_10 = new AyTreeViewItemModel("901", "fa-cc-discover", changfen1_1_1_1, false);  AyTreeViewItemModel changfen1_1_1_1_11 = new AyTreeViewItemModel("902", "fa-cc-discover", changfen1_1_1_1, false);  AyTreeViewItemModel changfen1_1_1_1_12 = new AyTreeViewItemModel("333", "fa-cc-discover", changfen1_1_1_1, false);  AyTreeViewItemModel changfen1_1_1_1_13 = new AyTreeViewItemModel("A15", "fa-cc-discover", changfen1_1_1_1, false);  AyTreeViewItemModel changfen1_1_1_1_14 = new AyTreeViewItemModel("A19", "fa-cc-discover", changfen1_1_1_1, false);  AyTreeViewItemModel changfen1_1_1_1_15 = new AyTreeViewItemModel("AA1", "fa-building", changfen1_1_1_1, false);  AyTreeViewItemModel changfen1_1_1_1_16 = new AyTreeViewItemModel("242", "fa-building", changfen1_1_1_1, false);  AyTreeViewItemModel changfen1_1_1_1_17 = new AyTreeViewItemModel("31101", "fa-building", changfen1_1_1_1, false);  AyTreeViewItemModel changfen1_1_1_1_18 = new AyTreeViewItemModel("A18", "fa-building", changfen1_1_1_1, false);  AyTreeViewItemModel changfen1_1_1_1_19 = new AyTreeViewItemModel("A16", "fa-building", changfen1_1_1_1, false);  AyTreeViewItemModel changfen1_1_1_1_20 = new AyTreeViewItemModel("A17", "fa-building", changfen1_1_1_1, false);  AyTreeViewItemModel daqin = new AyTreeViewItemModel("大庆路片区", "fa-building", root, false);  AyTreeViewItemModel daqin1 = new AyTreeViewItemModel("宏文路123号院站", "fa-home ", daqin, false);  AyTreeViewItemModel daqin2 = new AyTreeViewItemModel("金台区纺西村站", "fa-home ", daqin, false);  AyTreeViewItemModel daqin3 = new AyTreeViewItemModel("十二厂复兴村站", "fa-home ", daqin, false);  AyTreeViewItemModel daqin4 = new AyTreeViewItemModel("十二厂西兴村站", "fa-home ", daqin, false);  AyTreeViewItemModel daqin5 = new AyTreeViewItemModel("制氧家属院站", "fa-home ", daqin, false);  AyTreeViewItemModel daqin6 = new AyTreeViewItemModel("中粮国际站", "fa-home ", daqin, false);  AyTreeViewItemModel feidong = new AyTreeViewItemModel("肥东片区", "fa-building", root, false);  AyTreeViewItemModel gendan = new AyTreeViewItemModel("大庆路片区", "fa-building", root, false);  AyTreeViewItemModel gaoxing = new AyTreeViewItemModel("高新片区", "fa-building", root, false);  AyTreeViewItemModel jiangtanlu = new AyTreeViewItemModel("姜谭路片区", "fa-building", root, false);  AyTreeViewItemModel jinling = new AyTreeViewItemModel("金陵片区", "fa-building", root, false);  AyTreeViewItemModel qiaobei = new AyTreeViewItemModel("桥北分公司", "fa-building", root, false);  AyTreeViewItemModel qiaonan = new AyTreeViewItemModel("桥南片区", "fa-building", root, false);  AyTreeViewItemModel zhenwu = new AyTreeViewItemModel("政务片区", "fa-building", root, false);  return list; } 

第4个参数,指是否展开节点,已经动画模式都支持默认展开了(v2.9.1版本)

2015-5-29 16:57:09

Ay.Framework.WPF 进度一览[2015-06-05更新 - AyColorPickerDialog和AySlider完成] ( 官方群号  3...

增加Uc_HKControl  控制面板控件

优化DragInCanvasBehavior行为,让其不会拖出Canvas的范围,可以配置左键拖动,还是右键

使用DEMO

<Canvas ClipToBounds="True">                 <control:Uc_HKControl x:Name="uchkTest" Width="75" Height="75" Canvas.Top="10" Canvas.Right="10" >                     <i:Interaction.Behaviors>                         <Behaviors:DragInCanvasBehavior/>                     </i:Interaction.Behaviors>                 </control:Uc_HKControl>             </Canvas>
     xmlns:control="clr-namespace:Ay.Framework.WPF.Controls;assembly=Ay.Framework.WPF"            xmlns:Behaviors="clr-namespace:Ay.Framework.WPF.Behaviors;assembly=Ay.Framework.WPF"

2015-05-28 19:30:32

新的控件架构方式,自己独创的,新的接口提供,第一个 无损 自定义形状的控件模式应用

下面的是我改版的 RepeatButton,如果上面的内容你使用 pathlistbox,将会导致RepeatButton在pathlistbox的item的时候失去焦点,导致mouseover效果不对,怎么解决,不过已经解决了,而且无损 放大指定形状的 指定类型的控件.

AyIconAll 设置了path模式和fontawesome的颜色为双向绑定。

Ay.Framework.WPF 进度一览[2015-06-05更新 - AyColorPickerDialog和AySlider完成] ( 官方群号  3...

2015-5-27 16:58:53

新增AyPath控件,用于优化AyIconAll,path模式的显示性能,此时更简单和轻松了

        <control:AyPath control:PathKey.Key="path_add" Width="36" Height="36" Padding="0"   Foreground="#000000" SnapsToDevicePixels="True"></control:AyPath>

2015-5-27 14:44:58

海康威视WPF版本 实时监控控件

Ay.Framework.WPF 进度一览[2015-06-05更新 - AyColorPickerDialog和AySlider完成] ( 官方群号  3...

Ay.Framework.WPF 进度一览[2015-06-05更新 - AyColorPickerDialog和AySlider完成] ( 官方群号  3...

2015-05-25 17:10:16

AyTreeView高级效果演示

Ay.Framework.WPF 进度一览[2015-06-05更新 - AyColorPickerDialog和AySlider完成] ( 官方群号  3...

三角形的旋转,鼠标移入三角的显示,鼠标选中 图标 反色,鼠标移入移出 拖影,选中效果,三角形范围更大,点击更准确

整行响应更准确,自动算 层级,自动距离左边.

超级难点:   mvvm中的 对象 转 TreeViewItem,才能 添加动画的支持.    这个最难,如果突破不了,什么都不可能,它才不像listbox那样就可以拿到item

节点的展开和收起的动画的添加, 超级难,不用 eventsetter,因为这使得事件在控件使用者地方了,肯定不行.

鼠标移入移出,选中,展开,收起,图标反色也是最小的难度.

展开时候,因为要计算 展开的高度,收起也要,而且你要对动画非常的了解,才能灵活应用,比如问题:动画执行完,属性无法更改,因为被锁定了,怎样解锁等

流畅度和内存控制,我已经很优化了,执行完就释放内存.

AyTreeView动画开关控制属性    --    TreeViewAnimationIsOpen

增加 TreeViewItemHeight高度,可以绑定调节

2015-5-25 13:59:56

AyIconAll  的 fontawesome支持  fa-  或者 fa_    ,自动处理空白字符,例如首尾空白.

2015-05-23 10:34:04

新版 AyPropertyChanged类,支持linq的属性通知,支持其他类属性通知,支持多属性通知

Ay.Framework.WPF 进度一览[2015-06-05更新 - AyColorPickerDialog和AySlider完成] ( 官方群号  3...

增加 ExecuteCommandAction,使用例如以下demo,暂时没什么用,可用CommandBehavior替代

<StackPanel>   <TextBlock Text="{Binding Student.StudentName, ElementName=uc}">    <i:Interaction.Triggers>     <i:EventTrigger EventName="MouseLeftButtonDown">      <Behaviours:ExecuteCommandAction Command="{Binding Clicked, ElementName=studentsViewModel}" CommandParameter="{Binding Student, ElementName=uc}"/>     </i:EventTrigger>    </i:Interaction.Triggers>   </TextBlock>   <TextBlock Text="{Binding Student.Age, ElementName=uc}">   </TextBlock>   <TextBlock Visibility="Hidden" Height="0">    <TextBlock.DataContext>     <vm:StudentViewModel x:Name="studentsViewModel"></vm:StudentViewModel>    </TextBlock.DataContext>   </TextBlock>  </StackPanel> 
public class StudentViewModel : AyPropertyChanged   {    public StudentViewModel()    {     Clicked = new ActionCommand(this.Click);    }    public ICommand Clicked { get; private set; }    public void Click(object arg)    {     //为了演示需要,在这里用了一个MessageBox     //应尽量避免在VM中揉杂UI交互功能     MessageBox.Show((arg as Student).StudentName);    }   } 
public class Student : AyPropertyChanged   {    string studentName;    public string StudentName    {     get     {      return studentName;     }     set     {      studentName = value;      this.OnPropertyChanged(() => this.StudentName);     }    }    int age;    public int Age    {     get     {      return age;     }     set     {      age = value;      this.OnPropertyChanged(() => this.Age);     }    }   } 

增加CommandBehavior 绑定Event对Command的绑定

2015-5-22 15:11:44

  1. AyWindow增加 是否可以拖动 CanDrag (bool型的)

  2. AyIconAll增加Stroke(Brush型)和StrokeThickness(double型)  可以控制字体描边和path的描边

2015-05-18 18:53:39

AySwitch竣工 青春版

支持自定义尺寸,字体大小,两侧内容,两侧内容自动居中,是控件总长度减去滑块长度的剩余部分的水平居中,支持自定义2种状态颜色,缓冲动画,

Ay.Framework.WPF 进度一览[2015-06-05更新 - AyColorPickerDialog和AySlider完成] ( 官方群号  3...

示例代码,如上面截图

2015-05-05 14:30:23

MenuItem增加 Check,只要设置以下代码

 menuItem.IsCheckable = true;   menuItem.IsChecked = true;

选中不选中的效果

Ay.Framework.WPF 进度一览[2015-06-05更新 - AyColorPickerDialog和AySlider完成] ( 官方群号  3...

调整多屏幕显示器的支持DEMO

  1. 支持 主屏幕不投影, 显示其他 连接上的显示器, 例如上图,   A,B,C,D,E  5个按钮,右键按钮,出现投影选项,可以将窗口最大化的投影到其他显示器,被投影的窗体没有最小化,最大化,皮肤,关闭按钮,一个窗口只能在一个显示器上显示.

  2. 窗口aa显示到A显示器,没有关掉,又投影到B显示器,效果是 移动那个窗口对象到B显示器,A没有内容了

  3. 打开程序时候,读取上次窗口投影记录,保持上次关闭程序时候投影的状态,关闭主窗口,全部关闭.

  4. 窗口aa显示到A显示器,没有关掉,又将bb投影到A显示器,效果是  提醒该显示器已经投影了"XXX"窗口,是否替换,替换了,aa窗口关闭,bb窗口显示在A显示器,注意MenuItem的checked情况,要后台设置原先的aa窗口对应的check要变为false,现在的true.

优化AyMessageBox,调整提示文本的宽度为固定,且最多显示2行.

Ay.Framework.WPF 进度一览[2015-06-05更新 - AyColorPickerDialog和AySlider完成] ( 官方群号  3...

增加ShowQuestionOkCancel方法,效果如上,示例代码

 if (MessageBoxResult.OK == AyMessageBox.ShowQuestionOkCancel(string.Format("屏幕上已经存在/"{0}/"窗口,是否替换?", "热源纵览"), "提醒"))  {                       }

2015-04-30 17:48:57

AySimplyListView     继承Listview,性能比DataGrid好,如果你只是用于作为列表展示又需要表头,可以考虑,例如 日志等,表示很多需求还是需要用DataGrid,回家 封装DataGrid常见的需求DEMO

Ay.Framework.WPF 进度一览[2015-06-05更新 - AyColorPickerDialog和AySlider完成] ( 官方群号  3...

但是他为 我的 ComboGrid打下了基础.

2015-04-27 17:38:00

完成 Button的 平面模式,ToggleButton的普通和平面模式

添加  AyButton.IsFlatStyle="True"  统一是否开启平面模式

例如 平面的SplitButton,其实 control是  xmlns:control="clr-namespace:Ay.Framework.WPF.Controls;assembly=Ay.Framework.WPF"

 <control:AySplitButton x:Name="spFlat2" VerticalAlignment="Center"      Width="118" FontSize="13" HorizontalAlignment="Right"    Click="SplitButton_Click"    Height="25" Margin="0,16,317.5,18"  control:AyButton.IsFlatStyle="True"  Mode="ComboMenu"   Placement="Bottom" >   <control:AySplitButton.Content>    <StackPanel Orientation="Horizontal">     <Image Height="16" Margin="0,0,7,0" Source="/Ay.Framework.WPF;component/resources/demo/icondemo3.png" Stretch="uniform" Width="16"/>     <TextBlock Text="精简开发" />    </StackPanel>   </control:AySplitButton.Content>   <MenuItem Header="WPF语言">    <MenuItem.Icon>     <Image Height="18" Source="/Ay.Framework.WPF;component/resources/demo/icondemo2.png" Stretch="Uniform" Width="18"/>    </MenuItem.Icon>   </MenuItem>   <MenuItem Header="WPF开发">    <MenuItem Header="Web开发">     <MenuItem.Icon>      <Image Height="18" Source="/Ay.Framework.WPF;component/resources/demo/icodemo1.png" Stretch="Uniform" Width="18"/>     </MenuItem.Icon>    </MenuItem>    <MenuItem Header="桌面程序开发">     <MenuItem.Icon>      <Image Height="18" Source="/Ay.Framework.WPF;component/resources/demo/icondemo3.png" Stretch="Uniform" Width="18"/>     </MenuItem.Icon>    </MenuItem>    <MenuItem Header="游戏开发"/>    <MenuItem Header="Winform开发">     <MenuItem.Icon>      <Image Height="18" Source="/Ay.Framework.WPF;component/resources/demo/icondemo3.png" Stretch="Uniform" Width="18"/>     </MenuItem.Icon>    </MenuItem>    <MenuItem Header="Silverlight"/>   </MenuItem>  </control:AySplitButton> 

平面的Button

      <Button Width="140" Height="28"  Click="SplitButton_Click" control:AyButton.IsFlatStyle="True" Margin="15,0,0,0">                         <StackPanel Orientation="Horizontal">                             <Image Height="20" Source="/Ay.Framework.WPF;component/resources/demo/book.png" Stretch="uniform" Width="20" Margin="0,0,5,0"/>                             <TextBlock Text="我是很平的Button" VerticalAlignment="Center"/>                         </StackPanel>        </Button>

平面的ToggleButton,  平面模式支持背景色和Border颜色设置,不设置则是默认的主题颜色, 普通模式不支持背景色和边框颜色设置,受框架主题限制

<StackPanel Margin="0,5" Orientation="Horizontal">      <TextBlock Text="toggleButton演示,普通模式和平面模式" Width="250" Height=" 28" FontSize="14" Foreground="Red" Margin="5" VerticalAlignment="Center"/>      <ToggleButton Content="10小时" Height="26" Width="70" Margin="5" />      <ToggleButton Content="20小时" Height="26" Width="70" Margin="5"  />      <ToggleButton Content="30小时" Height="26" Width="100" Margin="5" control:AyButton.IsFlatStyle="True" />      <ToggleButton  Height="26" Width="26" Margin="5"   BorderBrush="#FF5C97DA" control:AyButton.IsFlatStyle="True">       <Image  Source="/Ay.Framework.WPF;component/resources/demo/icondemo3.png" Width="16" Height="16"/>      </ToggleButton>      <ToggleButton control:AyButton.IsFlatStyle="True" Height="26" Width="26" Margin="5"   BorderBrush="#FF5C97DA">       <Image  Width="18" Height="18" Source="/Ay.Framework.WPF;component/resources/demo/smile.png" Stretch="Uniform" />      </ToggleButton>      <ToggleButton control:AyButton.IsFlatStyle="True" Height="26" Width="26" Margin="5"   BorderBrush="#FF5C97DA">       <Image Source="/Ay.Framework.WPF;component/resources/demo/icondemo2.png" Width="16" Stretch="Uniform" Height="16"/>      </ToggleButton>      <ToggleButton control:AyButton.IsFlatStyle="True" Height="26" Width="26" Margin="5"   BorderBrush="#FF5C97DA">       <Image Source="/Ay.Framework.WPF;component/resources/demo/demo3.png" Width="16" Height="16"/>      </ToggleButton>      <ToggleButton control:AyButton.IsFlatStyle="True" Background="#B2CFDEE8" Height="26" Width="26" Margin="5"   BorderBrush="#FF5C97DA">       <Image Source="/Ay.Framework.WPF;component/resources/demo/demo3.png" Width="16" Height="16"/>      </ToggleButton>     </StackPanel> 

效果图:

Ay.Framework.WPF 进度一览[2015-06-05更新 - AyColorPickerDialog和AySlider完成] ( 官方群号  3... 最后一个Toggle指定了背景颜色

2015-04-24 16:24:49

完成AySplitButton,继承Button类:

静态效果图:

Ay.Framework.WPF 进度一览[2015-06-05更新 - AyColorPickerDialog和AySlider完成] ( 官方群号  3...

动态图演示:

Ay.Framework.WPF 进度一览[2015-06-05更新 - AyColorPickerDialog和AySlider完成] ( 官方群号  3...

代码使用示例

<control:AySplitButton x:Name="FlatSplitbuttonAy"        Foreground="#030303" FontSize="12"      Click="SplitButton_Click"       Width="118"        Height="26"      IsFlatStyle="True"      VerticalAlignment="Center"       HorizontalAlignment="Center"        Mode="Split"       Placement="Top" Margin="5,0,0,0"       >       <control:AySplitButton.Content>        <StackPanel Orientation="Horizontal">         <Image Height="16" Margin="0,0,8,0" Source="demo3.png" Stretch="Fill" Width="16"/>         <TextBlock Text="美食快递" />        </StackPanel>       </control:AySplitButton.Content>       <MenuItem Header="WPF语言">        <MenuItem.Icon>         <Image Height="18" Source="icondemo2.png" Stretch="Uniform" Width="18"/>        </MenuItem.Icon>       </MenuItem>       <MenuItem Header="WPF开发">        <MenuItem Header="Web开发">         <MenuItem.Icon>          <Image Height="18" Source="icodemo1.png" Stretch="Uniform" Width="18"/>         </MenuItem.Icon>        </MenuItem>        <MenuItem Header="桌面程序开发">         <MenuItem.Icon>          <Image Height="18" Source="icondemo3.png" Stretch="Uniform" Width="18"/>         </MenuItem.Icon>        </MenuItem>        <MenuItem Header="游戏开发"/>        <MenuItem Header="Winform开发">         <MenuItem.Icon>          <Image Height="18" Source="icondemo3.png" Stretch="Uniform" Width="18"/>         </MenuItem.Icon>        </MenuItem>        <MenuItem Header="Silverlight"/>       </MenuItem>      </control:AySplitButton> 

特色:支持 弹出框位置自定义

Ay.Framework.WPF 进度一览[2015-06-05更新 - AyColorPickerDialog和AySlider完成] ( 官方群号  3...

支持3种模式 Mode

 public enum SplitButtonMode     {         Split, ComboMenu, Button     }

支持默认是否明显显示右侧展开三角形,调节右侧三角形的border即可,调节属性 SanJiaoBorderOpacity double类型   0-1之间取值

例如中间第二个就是明显显示了 Ay.Framework.WPF 进度一览[2015-06-05更新 - AyColorPickerDialog和AySlider完成] ( 官方群号  3...

支持按钮内容自定义 AySplitButton.Content属性,跟wpf自带的Button的Content一样.

对了,我们还支持 是否显示 三角形,来达到一个不显示三角形的 菜单效果, 请设置属性 SanJiaoVisibility="Collapsed"  就行了

当然,你还可以直接 就一个三角形按钮也行,下面是我给出的示例代码,这里要设置Padding等于0,来覆盖默认样式的padding,因为我的SplitButton可以自动适应内容,调节内容边距

<control:AySplitButton x:Name="test_zuhe" Margin="5,0,0,0"     Click="SplitButton_Click"      Height="65"     VerticalAlignment="Center"      HorizontalAlignment="Center"       Padding="0"     Mode="Split"      Placement="Bottom"       >        <MenuItem Header="无内容模式"/>        <MenuItem Header="没有Content">       <MenuItem Header="padding要等于0"/>       <MenuItem Header="Split模式"/>        </MenuItem>    </control:AySplitButton> 

2015-04-24 11:58:37

调整,    继承AyWindow和AyPopup的窗体默认 属于超高清模式 非普通画质,画质等级  低级-普通-中级-中等接近-高级-超高级

2015-04-24 10:08:22

调整菜单 最小宽度为174,并且调整menuitem的边距,让看起来更协调, 调整弹出位置与父控件左侧对其,由于 阴影的问题,牺牲了左侧的阴影,不过还好,不影响整体

Ay.Framework.WPF 进度一览[2015-06-05更新 - AyColorPickerDialog和AySlider完成] ( 官方群号  3...

2015-04-23 17:37:43

AySplitButton,支持 三角左侧内容自定义,还未完全实现完,还要实现 ComboMenu

Ay.Framework.WPF 进度一览[2015-06-05更新 - AyColorPickerDialog和AySlider完成] ( 官方群号  3...

静态图演示

Ay.Framework.WPF 进度一览[2015-06-05更新 - AyColorPickerDialog和AySlider完成] ( 官方群号  3...

2015-04-23 14:21:24

  1. 修改Menu的部分样式,调整阴影 更平

Ay.Framework.WPF 进度一览[2015-06-05更新 - AyColorPickerDialog和AySlider完成] ( 官方群号  3...

2015-04-22 17:40:05

透明度调节AyOpacitySetSlider样式, 支持垂直和水平模式, 支持 整型调整数字

Ay.Framework.WPF 进度一览[2015-06-05更新 - AyColorPickerDialog和AySlider完成] ( 官方群号  3...

2015-04-22 11:43:57和2015-04-22 15:07:50

AyCheckBox   AyRadioButton 只是仅仅样式,控件还是 RadioButton,CheckBox

Ay.Framework.WPF 进度一览[2015-06-05更新 - AyColorPickerDialog和AySlider完成] ( 官方群号  3...

静态图片

Ay.Framework.WPF 进度一览[2015-06-05更新 - AyColorPickerDialog和AySlider完成] ( 官方群号  3...

2015-4-14 17:44:03

AyProgressBar样式完成,特色:支持动画时候,完成百分比连续动画,非完成部分白色

Ay.Framework.WPF 进度一览[2015-06-05更新 - AyColorPickerDialog和AySlider完成] ( 官方群号  3...

2015-4-14 12:03:43

AyIconAll  是一个完全超牛的Icon控件,支持图片(原来Image控件支持的,支持ico),支持path,支持gif,支持fontawesome (支持fa-mobile的写法,在wpf中-变成了_而已,支持动态切换)

示例代码:

Ay.Framework.WPF 进度一览[2015-06-05更新 - AyColorPickerDialog和AySlider完成] ( 官方群号  3...

Path的使用 path_ 开头定义图标,图标的data定义在application.xml中

Ay.Framework.WPF 进度一览[2015-06-05更新 - AyColorPickerDialog和AySlider完成] ( 官方群号  3...

关于FontAwesome我已经封装成枚举,更方便使用了,你可以直接按照fa的方式去使用

Icon的图片方式,支持pack,支持相对路径

Ay.Framework.WPF 进度一览[2015-06-05更新 - AyColorPickerDialog和AySlider完成] ( 官方群号  3...

path和fontawesome支持   颜色改变,根据Foreground更改,Path的宽和高是width和height,字体是fontsize,就当做textblock去调节就ok

2015-4-13 11:57:32

优化AyPopupWindow动画,不再偶尔卡顿

完成AyMessageBox

AyMessageBox是继承AyPopupWIndow,默认居中弹出,支持6套图标,图标来自AyIcons类

Ay.Framework.WPF 进度一览[2015-06-05更新 - AyColorPickerDialog和AySlider完成] ( 官方群号  3...

AyMessageBox支持自定义图标,可以控制标题栏高度,标题文字和LOGO,其他作用都是和MessageBox的参数一样,例如 是否删除对话框,点击确定,返回MessageBoxResult类型,你可以直接根据MessageBox的用法就会用了.

弹出框使用 DEMO

private void openMessageBox_Click(object sender, RoutedEventArgs e) {  if (cboMsgType.Text == "信息") {   AyMessageBox.ShowInformation("必须填写用户名");  }  else if (cboMsgType.Text == "警告")  {   AyMessageBox.ShowWarning("必须填写用户名");  }  else if (cboMsgType.Text == "错误")  {   AyMessageBox.ShowError("必须填写用户名");  }  else if (cboMsgType.Text == "异常")  {   AyMessageBox.ShowError("必须填写用户名");  }  else if (cboMsgType.Text == "疑问")  {   AyMessageBox.ShowQuestion("必须填写用户名");  }  else if (cboMsgType.Text == "删除")  {   if (MessageBoxResult.OK == AyMessageBox.ShowDelete("确认删除吗", "删除"))   {    AyMessageBox.ShowRight("操作成功!");   }   else {    AyMessageBox.ShowRight("操作已经被取消!","操作");   }  }  else if (cboMsgType.Text == "ok")  {   AyMessageBox.ShowRight("操作成功!");  } } private void openIconMessageBox_Click(object sender, RoutedEventArgs e) {  AyMessageBox.ShowCus("确认删除吗", "", Environment.CurrentDirectory+"/images/sys_Remove.png"); } 

效果图:

Ay.Framework.WPF 进度一览[2015-06-05更新 - AyColorPickerDialog和AySlider完成] ( 官方群号  3...

2015-4-10 17:54:36

AyWindow支持右侧4个按钮分别是否显示

Ay.Framework.WPF 进度一览[2015-06-05更新 - AyColorPickerDialog和AySlider完成] ( 官方群号  3...

支持窗体icon和title设置,自动调整显示,图标请设置16*16的图标,因为模板不控制图标大小

主要为AyMessageBox打下基础

2015-4-10 17:18:46 AyPopupwindow更新

在原先的支持固定控件位置弹出,现又支持 居中弹出和右下角弹出(动画已经更新,出现是从下往上,关闭是从上往下)

支持窗体icon和title设置,自动调整显示,图标请设置16*16的图标,因为模板不控制图标大小

Ay.Framework.WPF 进度一览[2015-06-05更新 - AyColorPickerDialog和AySlider完成] ( 官方群号  3...

2015-4-7 16:49:00

http://www.ayjs.net/post/79.html AyCombobox,AyTextbox,AyAutoCompleteTextBox,AyScrollViewer已经完成

2015-03-31 13:10:05

Ay.Framework.WPF 架构优化,集成皮肤窗口,客户端无需单独设置,优化Application,客户无需记录打开窗口,优化关闭应用程序为OnExplicitShutdown,自带判断是否主窗口关闭,退出所有。去掉AyWindow的IsMainWindow属性。

新增CefSharp  谷歌37的浏览器控件,支持WPF,替代自带的WebBrowser,由于CefSharp的32位版本加载web有点慢,且不能AnyCPU,所以只能分为32版本和64位版本

整合背景图片文件夹和配置文件目录,优化xml读取

Ay.Framework.WPF 进度一览[2015-06-05更新 - AyColorPickerDialog和AySlider完成] ( 官方群号  3...

2015-03-27

AyTabControl

动态图:

Ay.Framework.WPF 进度一览[2015-06-05更新 - AyColorPickerDialog和AySlider完成] ( 官方群号  3...

Ay.Framework.WPF 进度一览[2015-06-05更新 - AyColorPickerDialog和AySlider完成] ( 官方群号  3...

Ay3DModelLoadControl

Ay.Framework.WPF 进度一览[2015-06-05更新 - AyColorPickerDialog和AySlider完成] ( 官方群号  3...

AyWindow

AySkinSetWindow

AyPopWindow

Ay.Framework.WPF 进度一览[2015-06-05更新 - AyColorPickerDialog和AySlider完成] ( 官方群号  3...

AyArcChart

Ay.Framework.WPF 进度一览[2015-06-05更新 - AyColorPickerDialog和AySlider完成] ( 官方群号  3...

AyFontRadioButton

Ay.Framework.WPF 进度一览[2015-06-05更新 - AyColorPickerDialog和AySlider完成] ( 官方群号  3...

AyFontButton

Ay.Framework.WPF 进度一览[2015-06-05更新 - AyColorPickerDialog和AySlider完成] ( 官方群号  3... Ay.Framework.WPF 进度一览[2015-06-05更新 - AyColorPickerDialog和AySlider完成] ( 官方群号  3...

AyImage2Button

AyImage3Button

AyImage4Button(如AyWindow的右上角的4个按钮的状态)

AyPanel

ShowCurrentTime

Ay.Framework.WPF 进度一览[2015-06-05更新 - AyColorPickerDialog和AySlider完成] ( 官方群号  3...

AyContextMenu

Ay.Framework.WPF 进度一览[2015-06-05更新 - AyColorPickerDialog和AySlider完成] ( 官方群号  3...

AyMenu

Ay.Framework.WPF 进度一览[2015-06-05更新 - AyColorPickerDialog和AySlider完成] ( 官方群号  3...

Ay主题系统

Ay.Framework.WPF 进度一览[2015-06-05更新 - AyColorPickerDialog和AySlider完成] ( 官方群号  3...

正文到此结束
Loading...