2012-09-13 14 views
1

我有以下規則定義:PropertyGrid中ValueEditor一個文件名

<Rule ...> 
    <... /> 
    <StringProperty Subtype="file" ...> 
    <StringProperty.ValueEditors> 
    <ValueEditor EditorType="DefaultStringPropertyEditor" DisplayName="&lt;Edit...&gt;"/> 
    <ValueEditor EditorType="DefaultFilePropertyEditor" DisplayName="&lt;Browse...&gt;"/> 
    </StringProperty.ValueEditors> 
    </StringProperty> 
    <... /> 
</Rule> 

它添加了「<編輯... >」和「<瀏覽... >」編輯屬性選項,但當我需要讓用戶選擇一個* .txt文件時,瀏覽對話框會詢問* .exe文件。對話框中有一個組合框,允許選擇「所有文件」,但實際上這不是一個選項。

我試圖找到一個解決方案,但這個可擴展性位似乎沒有很好的記錄。

回答

0

我終於找到了一種方法來做到這一點,但僅限於VS2012。將典型的打開文件對話框格式中的過濾器字符串命名爲過濾器的元數據片段似乎現在已經成功了。

例子:

<ValueEditor EditorType="DefaultFilePropertyEditor" DisplayName="&lt;Browse...&gt;"> 
    <ValueEditor.Metadata> 
    <NameValuePair Name="Filters" Value="Text (*.txt)|*.txt" /> 
    </ValueEditor.Metadata> 
</ValueEditor> 
+0

這本來是整整一年,因爲我的職務,如果我發現這個明天:) –

相關問題