1

TextBoxでは、を使用できますtextBox1.SelectionStart = 4。DataGridViewでこれを行うにはどうすればよいですか?

明確にするために編集:特定のセルがすでに選択されており、編集モードになっているとします。右矢印キーを押すと、そのセルにあるテキストの1つ上の位置にキャレットが移動します。同じことをするボタンを作りたいです。

4

4 に答える 4

2

おそらく少し明確にする必要があります。DataGridViewで選択した行を変更することを意味しますか、それとも、ケアレットを移動するDataGridViewにテキストボックスがありますか?

選択した行を変更する場合は、SelectedIndexプロパティを試してください。

于 2009-05-13T17:48:31.510 に答える
1
private void RadGridView1_SelectionChanged(object sender, Telerik.Windows.Controls.SelectionChangeEventArgs e)
{
    RadGridView1.CurrentItem = RadGridView1.SelectedItem;
}
于 2012-01-10T11:30:31.380 に答える
0

DataGridViewのEditingControlShowingイベントを介してTextBoxを取得する必要があります。

これをメンバー変数として保存し、必要に応じて、textBoxメンバーにアクセスし、上記のようにSelectionStartを設定します。

何かのようなもの;

dataGrid.EditingControlShowing += this.dataGrid_EditingControlShowing;

void dataGrid_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e)
        {
            if(this.dataGrid.CurrentCell != null && e.Control is TextBox)
            {
                this.currentTextBox = (TextBox)e.Control;
            }
        }
于 2009-05-13T17:52:47.680 に答える
0

ユーザーがボタンをクリックするたびに、DataGridViewのセルはフォーカスを失うため、編集ボックスが削除され、値が検証され、フォーマットされた値がセルに配置されます。

ボタンでカレットを動かす理由は何ですか?

于 2009-05-14T01:51:03.953 に答える