在TFS DefaultTemplate.11.1.xaml建立流程模板,也有很多的屬性,其整個值由方包圍牙套[]
,所以標籤的形式圍繞屬性值的方括號是什麼?
<tagName attributeName="[attributeValue]">
其中tagName
,attributeName
和attributeValue
是文本字符串。
我找不到這個值語法的任何文檔。從模板看,它似乎會導致XAML處理器將文本評估爲表達式。這是解釋的地方?
在TFS DefaultTemplate.11.1.xaml建立流程模板,也有很多的屬性,其整個值由方包圍牙套[]
,所以標籤的形式圍繞屬性值的方括號是什麼?
<tagName attributeName="[attributeValue]">
其中tagName
,attributeName
和attributeValue
是文本字符串。
我找不到這個值語法的任何文檔。從模板看,它似乎會導致XAML處理器將文本評估爲表達式。這是解釋的地方?
我相信XAML中的方括號確實表示值表達式。我仍然不確定這種外延是如何被支持或執行的。可能性包括:
-XAML語法;我認爲這是最可能的答案。
-A Converter執行某處在解析過程中檢測到值開始並以方括號結束時,並在處理期間評估內容;我認爲這是第二個可能的答案。
- 方括號實際上可能不是特殊字符,並且作爲標識符的一部分有效,該值的評估是通過其他尚未知的機制執行的,並且方括號僅出現在約定中,也許是爲了表明價值不是文字,而是要評估的表達。我認爲這是不太可能的答案。
支持研究:
最後一個以上報價是我發現的唯一官方文檔,以任何方式提到圍繞XAML屬性值的方括號表達式,並且這還沒有闡明設計者是否僅僅是這樣隨意地執行這個操作,而沒有調用任何特殊的語法,或者表達式必須出現在根據官方XAML規範的方括號,因此設計者必須這樣做。
這是一個以前在您的XAML中設置的屬性,例如:<x:Property Name="BuildNumberFormat" Type="InArgument(x:String)" />
如果您在VS 2012中打開構建過程模板,則可以使用Workflow
更改/定製它們。
我認爲這是不正確的,除非你可以提供文件的鏈接。 [本頁](http://blogs.msdn.com/b/cathyk/archive/2010/01/26/expression-serialization-and-literal-support.aspx)說:「在WF設計器中創建的表達式使用序列化方括號,這是VisualBasicValue的簡寫或VisualBasicReference 「和[本文](http://blogs.msdn.com/b/cathyk/archive/2009/12/15/expressiontextbox-for-arguments-only.aspx )表示「手編輯工作流XAML文件以將Number屬性的值更改爲[1 + 2](方括號表示表達式)」。 –
taz
2013-03-22 14:51:53
其他猜測:方括號表達式是對「鍵」或「索引」的「直接引用」。另外:「少量XAML元素可以直接處理文本作爲其內容。」[^](http://msdn.microsoft.com/zh-cn/library/ms752059.aspx)。另外:「BAML表單是WPF XAML實現所使用的XAML的優化形式,它被優化,因爲它使用常用類型或成員的內部查找和令牌。」[^](http://msdn.microsoft.com/zh-cn/ .com/en-us/library/system.windows.baml2006.baml2006reader.aspx)方括號這樣的「內部令牌」? – taz 2013-03-22 14:58:25
要完成我上面顯示的屬性是流程模板中的參數。所以當你打開BP模板時,你會在底部看到一個標籤'Arguments',你會發現在XAML文件中進一步使用的所有屬性。 – TimVK 2013-03-22 14:59:09