0

私の窓の電話7.1アプリケーション(銀色のアプリケーション、VS 2010 Expressを使用してWindowsの電話のためのC#の言語)私はテーブル形式で自分のデータ(検索結果)を表示するためにgridviewを作成しました。私はクラスを作成し、そのクラスにそのグリッドビューをsuccussfullyバインドしました。これは私のxamlコードです:Windows Phone 7.1アプリケーションで動的にgridviewに行を追加するには?

<phone:PhoneApplicationPage.Resources> 
     <local:searchResultItemModel x:Key="searchResultIM"/> 
    </phone:PhoneApplicationPage.Resources> 


    <gridView:GridView x:Name="GridView1" CellSpacing="1" RowSpacing="1" SelectedItemChanged="GridViewSelectedItemChanged" Margin="26,16,25,22" ItemsSource="{Binding Source={StaticResource searchResultIM}, Path=Data}"> 

しかし、私は動的に行を追加したいです。これは静的なので、行を追加することはできません。 は、動的に行を追加するanyotherの方法です。誰も私を助けてくれますか?

答えて

0

これは完全に動的テーブルを作成する方法に合ったWindowsの携帯電話用

http://www.silverlightshow.net/items/Building-a-DataGrid-Control-for-Silverlight-for-Windows-Phone-Part-1.aspx

をSilverlightのデータグリッドコントロールを構築する内容がbeyindのWindows Phoneになった場合、リストボックスを使用することに問題がありますリストボックスを使ってテーブルを作成するのは簡単ではありません。このグリッドコントロールには、私のような初心者を助ける多くの機能があります。その完全に直感的な

0

ListBoxコントロールを使用して、好きなようにテンプレートを作成する必要があります。 ListBoxには、より大きなデータセットに役立つUIVitualizationのような機能が含まれています。

+0

cud u eloborate? –

0

上記のように、各行の外観を制御するために、データテンプレートとともにListBoxを使用することができます。例:

<ListBox ItemsSource="{Binding Source={StaticResource searchResultIM}, Path=Data}" ItemTemplate="{StaticResource SearchItemTemplate}" /> 

上記のListBox要素をPhoneページのLayoutRoot(通常はグリッドコントロール)内に配置します。リストボックスでは、あなたがあなたのリソースセクション、例の定義(DataTemplateのように定義)を使用するItemTemplateに参照されます:テンプレートの

<DataTemplate x:Name="SearchItemTemplate"> 
<Grid> 
    <Grid.ColumnDefinitions> 
     <ColumnDefinition Width="Auto" /> 
     <ColumnDefinition /> 
    </Grid.ColumnDefinitions> 
    <TextBlock Text="{Binding YourDataProperty1}" /> 
    <TextBlock Text="{Binding YourDataProperty2}" Grid.Column="1" /> 
</Grid> 
</DataTemplate> 

のDataContextはあなたの結果に取得するには、オブジェクトの型になります。そのため、YourDataProperty1などはそのresultオブジェクトのプロパティになる可能性があります。

希望すると助かります! /アンダース

+0

しかし、ここでも同じ静的ソースsearchResultIMを参照しています。次に、どのようにして行を動的に追加できますか? –

+1

検索結果アイテムをviewmodelのObservableCollectionに配置し、静的リソースの代わりにバインドします。例:ItemsSource = "{Binding SearchResults}"、SearchResultsはObservableCollectionです。 INotifyPropertyChangedが実装されているので、リストにアイテムを追加してボックスに表示すると、リストボックスに通知されます。 –

+0

おかげで、その本当に役に立つ –

関連する問題