私は自分のプロジェクトにUltraGridを持っています。データは各セルに入力され、データベースに保存されます。私はProduct_Code
と呼ばれるものを除いて、現在の行のすべてのセルを無効にしたいと考えています。アクティブな列の列にデータが入力されると(これはValueList
を介して入力されます)、私は他のすべてのセルがデータを入力できるようにします。UltraGridセルを無効にできません
は、これまでのところ私は
If Me.ugProducts.ActiveRow.Cells("Product_Code").Value.ToString = "" Then
Me.ugProducts.ActiveRow.Cells("Product_Volume").Activation = Activation.Disabled
Else
Me.ugProducts.ActiveRow.Cells("Product_Volume").Activation = Activation.AllowEdit
End If
しかし、誰成功へ
を試してみました。プロジェクトが構築されると、値が入力されていないにもかかわらず、すべてのセルがすぐに入力できます。なぜ機能しないのですか?これを行う最善の方法は何ですか?
'DataSource'はグリッドにバインドされていますか?その場合、編集可能ではない可能性があります。また、特定のセルを実行する代わりに、ex: 'Me.ugProducts.DisplayLayout.Bands(0).Columns(0).CellActivation = Activation.Disabled 'の列を行うことができます。 ** **この作品は私のために** Me.ug.Rows(whatrow).Cells(whatcolumn).Activation = Activation.Disabled' – Codexer
@Zagglerそうなら、私はそれらを無効にする方法はありませんか? –
基礎となる表が編集できない場合はありません。グリッドにバインドされ、スキーマを継承するためです。唯一の方法は、 'DataTable'へのあなたの列が***読み込み専用でないことを確認することです*** ...別の注意では、デフォルトで***すべてのセルは変更されない限り実行時に編集可能です*** 。 – Codexer