做WPF页面的时候我想通过C#代码触发自定义控件中的事件怎么做

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了做WPF页面的时候我想通过C#代码触发自定义控件中的事件怎么做相关的知识,希望对你有一定的参考价值。

如题
是否可以在.cs中通过C#代码触发自定义控件中自定义的事件?

参考技术A 如果是在xmal里面,比如说一个button click为自定义事件.
这样就注册到了Click事件. <Button Click="Button_Click"/>
在.CS里面直接注册就好了,不明白,这有难度吗?追问

我的意思是在.CS里面掉自定义控件事件,而不是在xaml里面掉!!

参考技术B 要贴代码才知道,其实WPF同Winfrom的设计思路上相同(个人认为)只是界面设计方式改了.!! 在后台代码中可以根据ID或Name(这里记不太清楚了,你可以看看)直接调用! 参考技术C public event EventHandler<EventArgs> OnXXXXX;

if ( this.OnXXXXX != null )

this.OnXXXXX(this,new EventArgs());
参考技术D 没做过啊,也想做做网页

C# wpf 如何实现自定义控件,布局时,大小发生变化,内部绘制的曲线跟随变化?

自己制作了一个仪表盘控件,刻度使用 自定义方法DrawScale()实现,获取当前的布局grid尺寸,然后依据此尺寸,绘制表盘刻度,出现的问题是,当布局时调整表盘控件的大小时,必须编译一次,刻度才会更新过来,否则保持不变,如何能实现,用户调整表盘控件布局时,表盘刻度实时更新。表盘的外壳使用xaml实现,布局时,能够实现 实时跟随表盘控件尺寸变化而变化,刻度用代码实现的,就做不到了。怎么能做到哪?

参考技术A public class TextBoxEx : TextBox static TextBoxEx() DefaultStyleKeyProperty.OverrideMetadata(typeof(TextBoxEx), new FrameworkPropertyMetadata(typeof(TextBoxEx))); HelpTextProperty = DependencyProperty.Register("HelpText", typeof(string), typeof(TextBoxEx), new FrameworkPropertyMetadata("请您输入..", new PropertyChangedCallback(OnHelpTextChanged))); public static DependencyProperty HelpTextProperty; public string HelpText get return (string)GetValue(HelpTextProperty); set SetValue(HelpTextProperty, value); private static void OnHelpTextChanged(DependencyObject sender, DependencyPropertyChangedEventArgs e) 追问

你这个回答,对得起你的职业吗?

参考技术B 重写控件的OnRender函数

以上是关于做WPF页面的时候我想通过C#代码触发自定义控件中的事件怎么做的主要内容,如果未能解决你的问题,请参考以下文章

在 WPF C# 中无法访问用户控件的自定义属性

WPF 自定义控件中,集合属性怎么做?

C# wpf 如何实现自定义控件,布局时,大小发生变化,内部绘制的曲线跟随变化?

[原创]c# wpf自定义 任意颜色阴影特效融合winform的探索之路

WPF怎么自定义设计成这个界面!

WPF 自定义一个控件,当点击按钮是触发到ViewModel(业务逻辑部分)和Xaml路由事件(页面逻辑部分)