我在一個月前開始了我的應用程序,這是我第一次構建移動應用程序,並且第一次使用XAML,即使我以前有過使用C#的經驗。關於綁定textblock的條件格式WinRT-XAML
這是我使用的數據格式:
idAyat namaKitab abbKitab numBab numAyat isi
1 kejadian kej 1 1 some long string to process blah blah
2 kejadian kej 1 2 some long string to process blah blah
3 kejadian kej 1 3 some long string to process query blah
4 kejadian kej 1 4 some long string to process blah query
5 kejadian kej 1 5 some query string to process blah blah
這是我的XAML代碼:
<GridView x:Name="gvResult">
<GridView.ItemsPanel>
<ItemsPanelTemplate>
<local:WrapPanel
Orientation="Vertical"/>
</ItemsPanelTemplate>
</GridView.ItemsPanel>
<GridView.ItemTemplate>
<DataTemplate>
<Grid Margin="5">
<Grid.RowDefinitions>
<RowDefinition Height="auto"/>
<RowDefinition Height="auto"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="300" />
</Grid.ColumnDefinitions>
<TextBlock Width="300" TextWrapping="Wrap">
<Underline>
<Run FontWeight="Medium" Text="{Binding abbKitab}"/><Run Text=" "/><Run FontWeight="Medium" Text="{Binding numBab}"/>
<Run FontWeight="Medium" Text=":"/> <Run FontWeight="Medium" Text="{Binding numAyat}"/>
</Underline>
<LineBreak/>
<Run Text="{Binding isi}"/>
</TextBlock>
</Grid>
</DataTemplate>
</GridView.ItemTemplate>
</GridView>
我試圖創建一個搜索結果頁面即會大膽或更改前景色用戶插入的「查詢」。 我讀過很多文章,發現one線程表示我們無法從後面的代碼中更改樣式設置器。
假設文章是正確的,如何更改我的頁面中我的文本塊的前景色? 更具體地說,我只是想改變匹配搜索查詢的單詞的顏色。
我認爲這將是更多像這樣也許:
<Style x:Key="PriorityStyle" TargetType="TextBlock" >
<Setter Property="Foreground" Value="#6c6d6f" />
<Style.Triggers>
<DataTrigger Binding="{Binding Priority}" Value="Critical">
<Setter Property="Foreground" Value="Red"/>
</DataTrigger>
</Style.Triggers>
</Style>
(EDIT)顯然,以上驗證碼不被WinRT中,XAML的支持,這是WPF的XAML
但我怎麼指定特定的那個代碼的單詞?有什麼建議麼 ?
謝謝。
我沒有看到你的數據優先級,但假設它存在我的TextBlock的前景屬性綁定到優先級和使用價值轉換器把它變成刷子。 – Denis
你是對的,該塊代碼是從這[鏈接](http://stackoverflow.com/a/15624365/2297716) –
如果你看到上面的更新部分,這是爲WPF,我不知道如何我在WINRT-XAML上做到這一點.. 我想弄清楚,如何更改與用戶SearchQuery匹配的「isi」列的某些文本的Foreground屬性,在這種情況下,上面的數據中的「查詢」字。 我試過處理搜索過程後列,增加 標籤到選定的字,顯然是沒有工作過,不能轉換到樣式值,它成爲字符串值.. –