zoukankan      html  css  js  c++  java
  • WPF中, 启用添加到RichTextBox中的控件

                                             WPF中, 启用添加到RichTextBox中的控件
                                                                                                    周银辉

    WPF中RichTextBox的确非常的强大, 但让人很郁闷的是:添加到其中的控件总是被禁用的(IsEnabled始终为false)

    参考以下代码:
    <Window 
        
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x
    ="http://schemas.microsoft.com/winfx/2006/xaml"
        Title
    ="LearnWPF - Changing Elements with Styles" 
        Width
    ="350" Height="200">  
        
    <RichTextBox >
            
    <!-- regular FlowDocument -->
            
    <FlowDocument FontFamily="Segoe" FontSize="12" >
              
    <Paragraph>This is some text inside a flowdocument</Paragraph>
              
    <BlockUIContainer>
                
    <Button Content="Click Me?"  IsEnabled="True">
                
    </Button>
              
    </BlockUIContainer>
            
            
    </FlowDocument>
          
    </RichTextBox>
    </Window> 
    虽然我们已经将Button的IsEnable属性设置为True,但实际运行时其仍然是被禁用的.

    解决方案如下:

    重写FlowDocument的IsEnabledCore属性,将其返回值设置为True
    class MyFlowDocument : FlowDocument
        
    {
            
    protected override bool IsEnabledCore
            
    {
                
    get
                
    {
                    
    return true;
                }

            }

        }
    然后使用重写了的MyFlowDocument替换FlowDocument就可以了:)

  • 相关阅读:
    面向对象二 — — static、final、常量的初始化、this和super
    面向对象二 — — 继承、抽象类、接口
    面向对象一基础知识
    JDBC简介及其用Java连接数据库
    Java I/O 几个重要流的应用
    GUI Panel 容器以及布局管理器
    Oracle 数据库一
    Java I/O文件拷贝
    Java I/O文件的过滤 、读取、写入
    简单理解io与nio
  • 原文地址:https://www.cnblogs.com/zhouyinhui/p/742176.html
Copyright © 2011-2022 走看看