小编Gre*_*ban的帖子

VSTO WPF Outlook插件 - 调整大小后刷新包含WPF内容的ElementHost时出现问题

我有一个outlook addin,它在Outlook Explorer的右侧添加了一个自定义任务窗格.在任务窗格中,我添加了一个包含ElementHost的UserControl.ElementHost具有一个带有许多WPF元素的WPF UserControl作为Child.

插件工作得很好,除非我调整自定义任务窗格以减小其大小,控件的内容通常不会正确重新绘制.相反,我在自定义任务窗格上获得了白色矩形.在附图中可以看到这方面的一个例子.对我来说真正奇怪的是,矩形的位置不仅限于ElementHost的内容,而是任务窗格的整个内容 - 您可以看到顶部矩形覆盖了任务窗格标题栏的下半部分.

什么可能导致问题以及如何解决问题?

谢谢,

格雷戈尔

在此输入图像描述

wpf vsto add-in

8
推荐指数
1
解决办法
593
查看次数

C#:什么是最好的集合类来存储非常相似的字符串项,以便有效地序列化到文件

我想将outlook电子邮件的entityID列表存储到文件中.entityID是字符串,如:

"000000005F776F08B736B442BCF7B6A7060B509A64002000""000000005F776F08B736B442BCF7B6A7060B509A84002000""000000005F776F08B736B442BCF7B6A7060B509AA4002000"

你可以注意到,字符串非常相似.我想将这些字符串保存在一个集合类中,当我将其序列化为文件时,该集合类将尽可能高效地存储.你知道任何可用于此的集合类吗?

提前感谢您提供任何信息...... Gregor

c# collections serialization

3
推荐指数
1
解决办法
622
查看次数

如何在TreeView中获取TreeViewItem的可用(可见)宽度

我有一个包含3列Grid的网格,TreeViewItem其中HierarchicalDataTemplate包含以下定义:

<Grid>    
  <Grid.ColumnDefinitions>
    <ColumnDefinition Width="Auto" />
    <ColumnDefinition Width="1*" />
    <ColumnDefinition Width="Auto" />
...
Run Code Online (Sandbox Code Playgroud)

我想设置网格的宽度,以便它完全占用TreeViewItem内部的所有可用空间TreeView.因此,网格的第三列应该在内部对齐TreeView.

如何获得网格宽度的正确值?

我知道,对于ListBox ItemTemplate,我可以通过将其绑定到以下来设置宽度ScrollContentPresenter:

Width="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType=ScrollContentPresenter, AncestorLevel=1}, Path=ActualWidth}"
Run Code Online (Sandbox Code Playgroud)

这个技巧不起作用TreeView,因为孩子们的可用空间比根树视图项目少.

有任何想法吗?

wpf treeview width treeviewitem

1
推荐指数
1
解决办法
3546
查看次数

标签 统计

wpf ×2

add-in ×1

c# ×1

collections ×1

serialization ×1

treeview ×1

treeviewitem ×1

vsto ×1

width ×1