2011-09-12 9 views
1

新しい行が追加されたときにその行が選択され、グリッドもスクロールする必要があります。ボトム。新しい行を作成した後に選択されたultragrid行を設定する

私はActiveRowをしようとするつもりだったが、それはそれは行を選択し、ビューにそれをスクロールするためには何のセッター

private void ultraButtonCreateNew_Click(object sender, EventArgs e) 
     { 
      DialogResult dr = new DialogResult(); 
      FormAddUnit form = new FormAddUnit(); 

      form.BuildingDataSet = _buildingDataSet; 
      form.SectionDataSet = _sectionDataSet; 
      form.UnitDataSet = _uc011_WizardStepUnitDataSet; 
      form.SummaryDataSet = _summaryDataSet; 
      form.FormState = WizardState.Create; 
      form.Enablement = false; 

      dr = form.ShowDialog(); 

      if (dr == DialogResult.Yes) 
      { 
       UC011_WizardStepUnitDataSet.UnitRow row = form.GetRow(); 
       _uc011_WizardStepUnitDataSet.Unit.AddUnitRow(row); 
       SetUltraGridData(); 
       ultraGridOverview.DisplayLayout.ActiveRow = row; 
       SetSummaryDataSet(); 
      } 
     } 

答えて

7

を持っていないと言う、あなたはこの

のように行のアクティブメソッドを呼び出すことができますいずれか
ultraGridOverview.Rows[ultraGridOverview.Rows.Count - 1].Activate() 

か、基礎となるのCurrencyManager

CurrencyManager currencymanagerCustomers; 
currencymanagerCustomers = this.BindingContext(ultraGridOverview.DataSource); 
currencymanagerCustomers.Position = _uc011_WizardStepUnitDataSet.Rows.Count -1; 
+0

選択する必要がある行が異なるバンドにある場合はどうなりますか? –

+0

私のデータソースは階層型で、データセットが2つのデータセットが1つあり、マスターテーブルの各行に子テーブルの子行がある場合とない場合があります。子テーブルの行を選択してスクロールする必要があります。@アンドレクレーマー。助けてください:) –

+0

私のリストはソートされています。 CurrencyManagerは私に相対インデックスを与えていますが、私は絶対インデックスを取得(および設定)する必要があります。何か案が? – C4u

0
のPositionプロパティを設定することができます

これは私のために、複数のバンドで機能しました。

rは、新しく作成された行への参照を格納するグローバル変数です。 最初はForm_Loadの最後にfalseになるグローバルboolです。

行を挿入/作成した後、rを参照して行を変更してください

関連する問題