がSilverlight 4で列全体の編集を無効にしないで、のデータグリッド内の特定のセルの編集を無効にすることが可能かどうかを知る必要があります。特定のセルオブジェクトをFrameworkElementプロパティIsReadOnlyまたはIsEnabledが含まれていません。 あなたはたぶん質問します:なぜ私はそれを必要としますか?私のアプリケーションでは、特定のセルを他のセルの内容に応じて無効にする必要があります。各行はこのように個別にチェックされています。 あなたは、私は、このような異常な動作を実現することができる方法のアイデアを持っている場合は記入してください;)DataGridで特定のセルの編集を無効にする
2
A
答えて
1
あなたは、行、あなたは無効にしているしたいセル/セルの列インデックスがある場合:次に
int r = 2, c = 4;
をあなたは、イベントCellEnterとCellLeaveに耳を傾け、次の操作を実行できます。
private void dataGridView1_CellEnter(object sender, DataGridViewCellEventArgs e)
{
if (e.RowIndex == r)
{
if (e.ColumnIndex == c)
{
dataGridView1.Columns[e.ColumnIndex].ReadOnly = true;
}
}
}
private void dataGridView1_CellLeave(object sender, DataGridViewCellEventArgs e)
{
if (e.RowIndex == r)
{
if (e.ColumnIndex == c)
{
dataGridView1.Columns[e.ColumnIndex].ReadOnly = false;
}
}
}
あなたはまだ読み取り専用に列全体を設定しているが、あなたはセルを離れた後、あなたはそれをバックにリセットされるので、それが表示されるという効果があります細胞のために働くだけです。
0
おかげNominSimが、これは私があまりにも私のproplemをお解決するために私を助けますが、NominSimが言ったようにneurotix シルバー4.
に私のDataGridにCellEnterとCellLeave方法を見つけるdidntのように、あなたが行のインデックスを知っている必要がありますと列。私はそれを解決する方法
:
を無効に編集
System.Windows.Threading.DispatcherTimer timMakeEditable = new System.Windows.Threading.DispatcherTimer();
private void dataGrid1_PreparingCellForEdit(object sender, DataGridPreparingCellForEditEventArgs e)
{
timMakeEditable.Interval = new TimeSpan(0, 0, 0, 0, 100); // 100 Milliseconds
timMakeEditable.Tick += new EventHandler(timer_Tick);
timMakeEditable.Start();
if (e.RowIndex == r && e.ColumnIndex == c)
{
dataGrid1.Columns[yourColumnIndex].IsReadOnly = true;
}
}
数ミリ秒後に編集
を有効にタイマーはカラムが有効になってます
void timer_Tick(object sender, EventArgs e)
{
dataGrid1.Columns[yourColumnIndex].IsReadOnly = false;
timMakeEditable.Stop();
}
私はcellEditEndedを使うのが良いアイデアだと思っていますが、それは私のためには機能しませんでした。
0
あなたは、私はこの本は、特定のセルを無効にするための最高のアイデアである。この
<DataGridTextColumn Header="ID"
Binding="{Binding ID}"
IsReadOnly="True"/>
のような特定のセルにIsReadOnly属性を使用することができます。 ありがとう
関連する問題
- 1. Slickグリッドで特定のセル編集を無効にする
- 2. PrimeNG Datatable - 特定の行のセル編集を無効にする
- 3. Xceed DataGrid:キーボードナビゲーションでセルを編集する
- 4. Django admin - 特定のモデルインスタンスの "編集"を無効にする
- 5. PHPmyadminでセルCLICKのインライン編集を無効にする方法
- 6. DataGridのセルを無効にする
- 7. WPF Datagridでセルの編集を無効にするにはどうすればよいですか?
- 8. C#WPF Datagrid特定の列の選択セルを無効にする方法
- 9. ダブルクリックでセル編集可能オプションを無効にする方法
- 10. WPF Datagridセル値の編集 - C#
- 11. DataGridコントロールwpfでセルの種類を編集するには?
- 12. DataGridで編集を選択的に無効にする方法は?デフォルトの編集によって
- 13. DataGridの列内でコンテンツの編集を無効にする方法
- 14. 有効、無効にする特定の列WPFツールキットのDataGrid
- 15. 特定の行のjsgridの編集と削除ボタンを無効にする
- 16. リストビュー内の特定の行の編集ボタンを無効にする方法
- 17. リストボックスの編集を無効にする
- 18. MFMailComposeViewControllerの編集を無効にする
- 19. Pandasで特定のセルを編集する[Python]
- 20. WPF ,, Datagridセルを編集可能にする方法は?
- 21. Excelで開いたときにXMLセルをロック(編集を無効にする)
- 22. Telerik GridView Rowで特定のセルを無効にする方法
- 23. 特定のセルでUITableViewCellEditingStyleDeleteを無効にする
- 24. Django - モデル編集を無効にする
- 25. WPF Datagridは単一セルの値のみを編集します
- 26. GoogleドキュメントのマージでGoogleシート内の特定のセルの編集
- 27. DataGridの編集したセルからnullを返します。
- 28. wx.ListCtrl with TextEditMixin - 選択したセルの編集を無効にする
- 29. セルSwiftでの編集を有効にする方法3
- 30. extjsエディタグリッド内の特定のセルを無効にする方法
少し違ったアプローチを使用しました。私はDataGridのCurrentCellChangedイベントとCellEditEndedイベントに接続しました。しかし、そのアイデアは本当に役に立ちました。ありがとうございました! – neurotix
これを実装した方法を教えてください。ありがとう。 – tobewan
あなたは**ブール論理**が何であるかわからないですか? – Arnthor