首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >DocumentViewer删除ToolBar放置阴影

DocumentViewer删除ToolBar放置阴影
EN

Stack Overflow用户
提问于 2017-01-30 12:59:06
回答 1查看 257关注 0票数 1

我已经阅读了很多关于在DocumentViewer控件中删除工具栏或搜索栏的主题,但我无法删除工具栏的投影效果。

你有什么想法吗?

我已经循环到孩子的控制,但它不工作。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-04-17 19:21:36

这是可视化树(选定的矩形是您所引用的投影):

下面的代码隐藏了矩形:

代码语言:javascript
复制
class MyDocumentViewer : DocumentViewer
{
    public void RemoveToolbarShadow()
    {
        var r = this.FindType<System.Windows.Controls.Border>()?
            .FindType<Grid>()?
            .FindType<DockPanel>()?
            .FindType<System.Windows.Shapes.Rectangle>();

        if (null != r) r.Visibility = Visibility.Hidden;
    }
}

帮助器扩展:

代码语言:javascript
复制
static class DependencyObjectExtensions
{
    internal static T FindType<T>(this DependencyObject reference) where T : DependencyObject
    {
        int n = VisualTreeHelper.GetChildrenCount(reference);
        for (int i = 0; i < n; i++)
        {
            var c = VisualTreeHelper.GetChild(reference, i) as T;
            if (null != c) return c;
        }
        return null;
    }
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41929257

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档