阅读 128

WPF 设置Button的content为多行模式

查找button的子元素是个TextBlock,再设置它的TextWrappingProperty属性为 TextWrapping.Wrap。

 

  Button btn2 = new Button() {Content="fdhfhfhfhfghfhfhfhfhhfh",Width=88};
            btn2.Loaded += Btn2_Loaded;
            gridRoot.Children.Add(btn2);


        }

        private void Btn2_Loaded(object sender, RoutedEventArgs e)
        {
            Button btn = (sender as Button);
            var o = GetChildObjects(btn, typeof(TextBlock));
            o[0].SetValue(TextBlock.TextWrappingProperty, TextWrapping.Wrap);

        }

      

        /// 
        /// 根据类型查找子元素
        /// 
        /// 
        /// 
        /// 
        /// 
        public List GetChildObjects(DependencyObject obj, Type typename) where T : FrameworkElement
        {
            DependencyObject child = null;
            List childList = new List();

            for (int i = 0; i <= VisualTreeHelper.GetChildrenCount(obj) - 1; i++)
            {
                child = VisualTreeHelper.GetChild(obj, i);

                if (child is T && (((T)child).GetType() == typename))
                {
                    childList.Add((T)child);
                }
                childList.AddRange(GetChildObjects(child, typename));
            }
            return childList;
        }

  

原文:https://www.cnblogs.com/wgscd/p/15069704.html

文章分类
代码人生
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐