wpf怎么把系统字库的字体大小读取到combobox
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了wpf怎么把系统字库的字体大小读取到combobox相关的知识,希望对你有一定的参考价值。
参考技术A 用WPF的ComboBox控件的时候,需要用到TextChanged属性,但是这个属性属于TextBox控件,不用担心,ComboBox中存在TextBox,所以关键问题就是如何找到ComboBox中的TextBox控件。 ComboBox控件的默认组成:第一层(1个控件):System.Windows.Controls.Grid第二层(2个控件):System.Windows.Controls.Primitives.Popup;Microsoft.Windows.Themes.ListBoxChrome;System.Windows.Controls.TextBox;System.Windows.Controls.Primitives.ToggleButton Content: IsChecked:False控件都是按顺序排列的,所以取得TextBox控件如下:((TextBox)VisualTreeHelper.GetChild(VisualTreeHelper.GetChild(this.cbServer, 0), 2)).TextChanged += new TextChangedEventHandler(SetDataBaseIsEnabled); 注意:这段代码要放在Window_Loaded()事件中,不能放在页面的构造方法中。就可以为ComboBox控件添加上TextChanged属性了。PS:查找ComboBox中控件的代码:private void button1_Click(object sender, RoutedEventArgs e) for (int i = 0; i < VisualTreeHelper.GetChildrenCount(this.cbServer); i++) DependencyObject o1 = VisualTreeHelper.GetChild(this.cbServer, i); for (int j = 0; j < VisualTreeHelper.GetChildrenCount(o1); j++) DependencyObject o2 = VisualTreeHelper.GetChild(o1, j);如何将 TextBlock(字体大小)增大/缩小到 WPF 中的可用空间?
【中文标题】如何将 TextBlock(字体大小)增大/缩小到 WPF 中的可用空间?【英文标题】:How to grow/shrink a TextBlock (Font Size) to the available space in WPF? 【发布时间】:2011-06-15 05:26:58 【问题描述】:我看到这个问题问了很多,但是,与我正在寻找的相反。虽然其他人希望控件根据文本大小调整自身大小,但我试图弄清楚是否有办法将文本大小增加到可用空间量。
采用数字时钟窗口的概念,您希望根据时钟所在窗口的大小来说明时间增长(或缩小)的数字。如果没有办法自动执行此操作,请使用任何指针以编程方式完成此任务?
【问题讨论】:
【参考方案1】:WPF Viewbox 控件将扩大/缩小其内容到可用空间:
http://www.wpftutorial.net/ViewBox.html
只需将您的 TextBlock 放在 ViewBox 中:
<Viewbox Stretch="Uniform" Width="50" Height="50">
<TextBlock Text="Test" />
</Viewbox>
当然,您的 Viewbox 通常由其容器缩放,但希望您明白这一点!
【讨论】:
以上是关于wpf怎么把系统字库的字体大小读取到combobox的主要内容,如果未能解决你的问题,请参考以下文章