0

くだらない質問でごめんなさい

私は c# を使用する新しい wp 開発者です。

別のフォームへのハイパーリンクを作成するための解決策について知りたいです。これで、データソースバインディングからのリストボックス使用データが既にありました。

この場合、Webboard の同じリスト スレッドと、詳細へのリンクをタッチします。

リストボックス内のリンクから別のフォームに移動するにはどうすればよいですか?

私のコードは次のようになり、リンクをテキストブロックに置き換えたいと思います:

<ListBox.ItemTemplate >
                <DataTemplate>
                    <StackPanel Margin="0,0,0,17" Width="432" Orientation="Horizontal">
                        <Image Source="../Media/Images/play.png" />
                        <StackPanel >
                            <TextBlock Text="{Binding Title}" 
                               TextWrapping="Wrap" 
                               Style="{StaticResource PhoneTextExtraLargeStyle}"/>
                            <TextBlock Text="{Binding ShortDescription}" 
                               TextWrapping="Wrap" Margin="12,-6,12,0" 
                               Visibility="{Binding ShortDescriptionVisibility}" 
                               Style="{StaticResource PhoneTextSubtleStyle}"/>
                            <TextBlock Text="{Binding LongDescription}"
                               TextWrapping="Wrap" 
                               Visibility="{Binding LongDescriptionVisibility}"/>
                            <StackPanel>
                                <Slider HorizontalContentAlignment="Stretch"
                                   VerticalContentAlignment="Stretch" 
                                   Visibility="{Binding LongDescriptionVisibility}" 
                                   ValueChanged="Slider_ValueChanged" 
                                   LargeChange="0.25" SmallChange="0.05"/>
                            </StackPanel>
                        </StackPanel>
                    </StackPanel>
                </DataTemplate>
            </ListBox.ItemTemplate>
4

1 に答える 1

0

シナリオ1:Web URLへのナビゲートユーザーがそのリンクをクリックしたときにナビゲートするURL(NavigateToPageUrlと呼びます)を含むフィールドがデータソースにあるとします。この場合、内側のスタックパネル内(つまり、LongDescriptionにバインドされているテキストボックスの下)に次のコードを記述できます。

シナリオ2:同じアプリケーション内のフォーム間を移動する:この場合、フォーム名(NavigateToThisForm.xamlなど)を持っている必要があります。この場合、任意のスタックパネルにTag ="/navigatetothisformのようなタグを追加できます。 xaml」を作成し、スタックパネルのイベントハンドラーを記述します。完全なコードは次のようになります。

<StackPanel Tag="/Page2.xaml" Tap="StackPanelTap">
// Your code to add title and other fields.
</StackPanel>



private void StackPanelTap(object sender, GestureEventArgs e)
{
    var stackpanel = (StackPanel)sender;
    var navigateUrl = stackpanel.Tag.ToString();
    NavigationService.Navigate(new Uri(navigateUrl, UriKind.Relative));
} 

お役に立てば幸いです。

于 2012-09-09T22:07:40.527 に答える