2011-12-15 15 views
0

dataGridに異なる行が追加されました。 30行シルバーライトグリッドにスクロールが表示されます。異なる行のデータが変更されます。DataGrid(Silverlight)のスクロール時に行のデータが変更される

私はイベントを変更しました。行内のデータを変更するイベントはありません。しかし、ディスプレイ上でデータが変更されます。

なぜこのデータグリッドで起こっているのですか? 特定のイベントはありますか?

+0

ヒント:Virtualizating。 Virtualizating Attached Propertyはデフォルトでオンになっています。 – codeSetter

+0

私は、データグリッドから高さを削除し、スクロールバーを削除し、スクロールビューアにデータグリッドを置くことで修正しました。しかし、私はまだ本当にこれが間違っていることを知りたいです。 – Waheed

答えて

4

私は、AutoGridに自動高さを与え、スクロールバーを削除してDataGridScrollViewerに入れることで修正しました。

しかし

私はまだ本当にこれで間違っているものを知っていただきたいと思います。

+0

スクロール中に値が異なる行にランダムにコピーされていたinfragistics xamgrid(silimarからsilverlightへのデータグリッド)で何時間もの戦いを経て、ありがとうございました。 – rockspider

0

私は現在、DataGrid内のComboBoxesで同様の問題が発生しています。いくつかの研究の後、私は理由を知ったと思う。行が見えるようになると(つまり、下にスクロールし、以前に非表示の行が表示されている)、Row_Loadingイベントはその行内のComboBoxを起動して再初期化します(前述のDipakの行仮想化のためです)。

のSilverlight 3のためにこのリンクが、私は、Silverlight 4を使用して同じ問題を抱えていますので、私はSL4は、同じ問題があると仮定しています:

http://forums.silverlight.net/t/125209.aspx/1

にあなたが何をしたかに似た溶液を用いて別のリンクを基本的にRow Virtualizationを手動でオフにし、垂直スクロールをオフにしてRowPresenterをScrollViewerに配置することで、 uは、グリッドをロードしたときに作成された行をスクロールすると

http://forums.silverlight.net/p/101075/230671.aspx

0

Actucallyないすべての行は、すぐに初めて作成され、uは最初の行のチェックボックスを想定してまでスクロールsonethingマークするので削除します一番下の行を次にスクロールして、再度チェックボックスの選択なしで再作成された行を表示します。 希望するものは...

+0

はい、正しいです。 – Waheed

0

昔、Infragistiscs XamDataGridでも同じ問題がありました。

このエラーを引き起こす2つのフィールドに同じプロパティをバインドします。

     <ig:Field Column="1" Name="ArtNrID" Label="{l:Translate PriceList_ArtNr}" Width="80"> 
          <ig:Field.Settings> 
           <ig:FieldSettings AllowEdit="True" LabelHeight="23"/> 
          </ig:Field.Settings> 
         </ig:Field> 
       <ig:Field Column="2" Name="ArtBez" Label="{l:Translate PriceList_ArtBez}" Width="80"> 
        <ig:Field.Settings> 
         <ig:FieldSettings AllowEdit="False" LabelHeight="23"/> 
        </ig:Field.Settings> 
       </ig:Field> 
       <!--<ig:UnboundField Column="2" Name="ArtNrBez" Label="{l:Translate PriceList_ArtBez}" Width="Auto"> 
          <ig:Field.Settings> 
           <ig:FieldSettings AllowEdit="False" LabelHeight="23"> 
            <ig:FieldSettings.EditorStyle> 
             <Style TargetType="{x:Type igEditors:XamComboEditor}" > 
              <Style.Setters> 
               <Setter Property="DisplayMemberPath" Value="ArtBez"/> 
               <Setter Property="ValuePath" Value="ArtNrID"/> 
               <Setter Property="ItemsSource" Value="{Binding Value.ArticleList, Source={StaticResource proxy}}"/> 
               <Setter Property="DropDownButtonDisplayMode" Value="OnlyInEditMode"/> 
               <Setter Property="IsInEditMode" Value="False"/> 
               <Setter Property="Value" Value="{Binding DataItem.ArtNrID}"/> 
              </Style.Setters> 
             </Style> 

            </ig:FieldSettings.EditorStyle> 
           </ig:FieldSettings> 
          </ig:Field.Settings> 
         </ig:UnboundField>--> 
0

同様の問題が発生し、データグリッドxamlで仮想化をfalseに設定して修正できました。

VirtualizingPanel.IsVirtualizing="False" 
関連する問題