環境
- Windows XP x32 Visual Studio 2005 Standard Edition
- Windows Mobile 2003(Pocket PC 2003)を実行しているHoneywell Dolphin9500バーコードスキャナーと白黒カメラが組み込まれています。ここにあるSDKを使用します。
- .NET Compact Framework1.0SP3および.NETFramework1.1
- VC#の使用
ゴール
CheckBoxes = true
フォーム上およびフォーム上にListViewコントロールがありView = Details
ますが、チェックボックスをユーザーが「チェック可能」にしたくありません。レコード完了の状態表示に使用しています。ただし、イベントハンドラー関数を使用して、コードを介してチェックボックスをオンにします(つまり、レコードの完了時:) lvMeters_ItemCheck(null, null);
。
問題
チェックボックス自体のチェックを無効にしました(このデバイスではタッチスクリーンは正確ではないと思います)。ただし、行を選択するとき(私は持っていますFullRowSelect = true
)、コントロールはチェックボックスをチェックすることが多く、イベントハンドラーが呼び出されていないようです。
私が試したこと
私は基本的にイベントハンドラーのアクションを元に戻そうとしました:
private void lvMeters_ItemCheck(object sender, ItemCheckEventArgs e)
{
if (sender is ListView)
{
if (e.CurrentValue == CheckState.Checked)
lvMeters.Items[e.Index].Checked = true;
else
lvMeters.Items[e.Index].Checked = false;
}
else if (e.CurrentValue == CheckState.Checked)
lvMeters.Items[e.Index].Checked = false;
else
lvMeters.Items[e.Index].Checked = true;
}
問題は、上記のハンドラーがリストビューselectで呼び出されず、SelectedItemChangedイベントハンドラーがこのイベントハンドラーを呼び出さないことですが、selectのチェックボックスはオンのままです。ボックス自体をチェックすると呼び出されます。
追加情報が必要ですか?
遠ざけてください、そして私は最善を尽くします!
私は初心者です
ですから、私はこれを完全に間違って行っているので、全体を別の方法で行う必要があることをお気軽にお知らせください。