VB.NETとVisualStudio2005を使用してデータソースを作成しました。データソースをダイアログにドラッグすると、VSはリンクされたオブジェクトのメンバーであるaSystem.Windows.Forms.BindingSource
と。を含むテキストボックスを作成しましたSystem.Windows.Forms.BindingNavigator
。
リスト(myListと呼ばれる)にデータを入力し、BindingSourceでmyListをDataSourceとして設定すると、これを読み取り専用にしたいという事実を除いて、物事はうまく機能します。ユーザーがテキストボックスの1つで何かを変更すると、変更が保存されます。
BindingSourceにバインドする読み取り専用コレクションを作成しようとしましたが、問題は解決しませんでした。
Dim detailsDlg As New dlgMyDetails
Dim readOnlyList As New ReadOnlyCollection(Of MyObjects)(myList)
detailsDlg.MyBindingSource.DataSource = readOnlyList
detailsDlg.ShowDialog()
すべてのテキストボックスを無効にできると思いますが、それは少し手間がかかるようです。さらに、読みやすくするためにフォントの色を変更したいと思います。
理想的には、ユーザーがテキストボックスにフォーカスを設定したり、コンテンツを編集したりできるかどうかは気にしないでしょうが、変更を保持したくないだけです。つまり、誰かが何かを編集し、ナビゲーターを使用して次のレコードに移動してから戻ってきた場合、ユーザーがそれを再生する前の状態のままにしておく必要があります。
何か提案/ガイダンスはありますか?
前もって感謝します!