C#WPF应用程序怎么修改程序集名称和程序图标

C#WPF应用程序怎么修改程序集名称和程序图标,第1张

winform 和WPF程序的修改方法是一样的。

在VS中找到伏橘你要修改的项目,然后右键=>属性, 选择“应用程序”选项卡,磨银

在里面可以设置你要改的“程序集名称”,和“瞎厅宴图标”。

这个派纤是win 7 Aero 功能的一个特色,使用该功能必须使用Aero主题,设置方法如下:

1、在桌面颤歼的空茄羡冲白处,右击鼠标。选择“个性化”

2、在“更改计算机上的视觉效果和声音”中选择“Aero主题”中某一个主题,如“window7”

以写一个通用类, 以扩展的附加属性附加到所有的 UIElement. (已经写好了, 但不贴出来了, 留点思考). 但给个大概的.

先说写好这个类后, 在 xaml 中如何对 UIElement 设置快捷键.

假定这团哪个类叫 MyHotKeyClass, 在命名空间 WPFApp1 上.

下面是一份 xaml 档, Window 为根元素, 包含一个困森 StackPanel, 而 StackPanel 有 Button, Image 两个子元素, 现在对 Button 设置快捷键 为 Ctrl + F, 对应 Click 事件对 Image 设置快捷键为 Shift + D, 对应 MouseLeftButtonDown 事件:

首先在 Window 引用 xmlns

<Window ...

xmlns:sk="clr-namespace:WPFApp1"

...>

<StackPanel>

<Button Content="Button"

sk:MyHotKeyClass.AccessKey="塌尺码F"

sk:MyHotKeyClass.ModifierKey="Control"

sk:MyHotKeyClass.RoutedEvent=""

Click="Button_Click"

/>

<Image Source="C:\wpf.jpg" Stretch="None"

sk:MyHotKeyClass.AccessKey="D"

sk:MyHotKeyClass.ModifierKey="Shift"

sk:MyHotKeyClass.RoutedEvent=""

MouseLeftButtonDown="Image_MouseLeftButtonDown"

/>

</StackPanel>

</Window>

只是写一个类, 然后 就可以在各个 xaml 引用了, 非常简单.

但如何编写这个 MyHotKeyClass 呢?

首先, 它是一个普通类, (有些网站说非要从 DependencyObject 衍生, 其实不是必须的), 从上面设置可以看出, 它至少有三个 附加属性 (DependencyProperty): AccessKey, ModifierKey, RoutedEvent.

于是有了下面这个类的结构:

namespace WPFApp1

{

public class MyHotKeyClass

{

// 设置一个 AccessKey 的附加属性

public static readonly DependencyProperty AccessKeyProperty

= DependencyProperty.RegisterAttached("AccessKey", typeof(Key), typeof(MyHotKeyClass), new UIPropertyMetadata(...))

public static Key GetAccessKey(DependencyObject source)

{

...

return (Key)source.GetValue(AccessKeyProperty)

}

public static void SetAccessKey(DependencyObject source, Key value)

{

...

source.SetValue(AccessKeyProperty, value)

}

// 其余两个 ModifierKey 和 RoutedEvent 对应的元数据类型分别是

// typeof(ModifierKeys) 和 typeof(RoutedEvent)

// 详细的就不写了, 和第一个 AccessKey 的定法基本上一致.

}

}

最后测试这个类的工作, 在 Window 对应的类下写好按钮 Click 事件:

... Button_Click(...)

{

MessageBox.Show("Button was clicked")

}

... Image_MouseLeftButtonDown(...)

{

...

}

当按下 Ctrl + F 时, 就相当于点击了按钮, 当按下 Shift + D 时就相当于在 Image 控件上点了鼠标左键.

-------- END ----

关键点是 写好 DependencyProperty.

Good Luck


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/12512945.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存