私はListView
コントロールを持つWindowsフォームアプリケーションを持っています。私は単一の副題の前景色を変えたいと思う。行や列全体の色を変更することはできましたが、1つのサブアイテムに対してこれを行う方法はわかりませんでした。誰かがこれを行う方法を知っていますか?ListViewコントロール内の単一のサブ項目のForeColorを変更するにはどうすればよいですか?
21
A
答えて
46
ソリューションは非常に簡単です、そしてListViewSubItem.ForeColor
propertyのドキュメントの備考セクションで示されます。
サブアイテムを所有している
ListViewItem
のUseItemStyleForSubItems
プロパティがtrueに設定されている場合は、このプロパティを設定すると、持っています無効。
デフォルトの設定は、あなたが唯一の場所でのプロパティを変更する必要がなるようにListView
制御中の1アイテムが所有するすべてのサブ項目のための一貫性のある外観を維持することを意図しています。 デフォルトの動作を変更するには、ListViewItem
のUseItemStyleForSubItems
propertyを "False"に設定する必要があります。
完了したら、個々の副明細のForeColor
(またはその他の)プロパティを調整できます。例:
myListView.Items[0].UseItemStyleForSubItems = false;
myListView.Items[0].SubItems[1].ForeColor = Color.Red;
1
ここでは、マルチクライアントのSCCMプッシュ/削除の結果を示しました。渡されたCSVは(文字列ClientName、文字列PackageName、文字列EventType、bool Result)でしたが、最も長いフィールドPackage Nameを最後に表示し、成功/失敗の色を見やすくする結果を得ました。
private void MultiClientResultForm_Load(object sender, EventArgs e)
{
foreach (string token in Main.ClientListResults)
{
string[] ResultRecord = token.Split(new string[] { "," }, StringSplitOptions.None);
if (ResultRecord[0] != "")
{
ListViewItem row = new ListViewItem(ResultRecord[0]);
row.SubItems.Add(new ListViewItem.ListViewSubItem(row, ResultRecord[2]));
if (ResultRecord[3] == "true")
{
row.SubItems.Add(new ListViewItem.ListViewSubItem(row, "Success"));
row.SubItems[2].ForeColor = Color.ForestGreen;
}
else
{
row.SubItems.Add(new ListViewItem.ListViewSubItem(row, "Fail"));
row.SubItems[2].ForeColor = Color.DarkRed;
}
row.SubItems.Add(new ListViewItem.ListViewSubItem(row, ResultRecord[3]));
row.SubItems.Add(new ListViewItem.ListViewSubItem(row, ResultRecord[1]));
listViewResults.Items.Add(row);
}
}
}
2
すべてのサブアイテムの色を設定し、目的の色に変更することができます。
例コード:
private void btn_Add_Click(object sender, EventArgs e)
{
ListViewItem lvi = new ListViewItem();
ListViewItem.ListViewSubItem lvsi1 = new ListViewItem.ListViewSubItem();
ListViewItem.ListViewSubItem lvsi2 = new ListViewItem.ListViewSubItem();
lvi.Text = tb_Main.Text;
lvsi1.Text = tb_Sub1.Text;
lvsi2.Text = tb_Sub2.Text;
lvi.UseItemStyleForSubItems = false;
lv_List.ForeColor = Color.Black;
if (lvsi1.Text == tb_Different.Text)
{
lvsi1.ForeColor = Color.Red;
}
if (lvsi2.Text == tb_Different.Text)
{
lvsi2![enter image description here][2].ForeColor = Color.Red;
}
lv_List.Items.Add(lvi);
lvi.SubItems.Add(lvsi1);
lvi.SubItems.Add(lvsi2);
}
2
値を持つすべてのサブアイテムを着色します。この例で、 "月曜日"
public static void colorListcolor(ListView lsvMain)
{
foreach (ListViewItem lvw in lsvMain.Items)
{
lvw.UseItemStyleForSubItems = false;
for (int i = 0; i < lsvMain.Columns.Count; i++)
{
if (lvw.SubItems[i].Text.ToString() == "Monday")
{
lvw.SubItems[i].BackColor = Color.Red;
lvw.SubItems[i].ForeColor = Color.White;
}
else {
lvw.SubItems[i].BackColor = Color.White;
lvw.SubItems[i].ForeColor = Color.Black;
}
}
}
}[![Screenshot of the result from the code above][1]][1]
関連する問題
- 1. オプションメニューのサブ項目の選択色をプログラムで変更するにはどうすればよいですか?
- 2. listviewの項目の背景色をプログラム的に変更するにはどうすればよいですか?
- 3. recyclerviewの単一項目を更新するにはどうすればよいですか?
- 4. NetLogoでリストのn番目の項目を変更するにはどうすればよいですか?
- 5. リスト項目の一部であるImageViewを変更するにはどうすればいいですか?
- 6. 配列から単一の項目を取得するにはどうすればよいですか?
- 7. グリッド内の単一の矩形の色を変更するにはどうすればよいですか?
- 8. pandasデータフレーム内の単一のインデックス値を変更するにはどうすればよいですか?
- 9. ListViewで複数の項目の背景色を設定するにはどうすればよいですか?
- 10. アンドロイドスタジオのナビゲーションドロワーのメニュー項目のアイコンを変更するにはどうすればよいですか?
- 11. GroupBoxのForeColorをすべての子コントロールに適用することなく、その色を変更するにはどうすればよいですか?
- 12. listViewで項目を選択し、選択した項目の内容をrichTextBoxに表示するにはどうすればよいですか?
- 13. Listview + BaseAdapter - 単一項目の変更についての通知方法?
- 14. AndroidのListViewから項目を正しく削除するにはどうすればよいですか?
- 15. WPFでListViewの項目を取得するにはどうすればよいですか?
- 16. ネストされたリスト項目のCSSスタイルを変更するにはどうすればよいですか?
- 17. AlertDialogにリストされている項目を変更するにはどうすればよいですか?
- 18. JavaFxのTreeViewの単一のセル項目にオブジェクトのプロパティをコントロールとして表示するにはどうすればよいですか?
- 19. スピナーリスト項目のテキストサイズとテキストの色を変更するにはどうすればよいですか?
- 20. ボトムメニュー項目のテキストの色を変更するにはどうすればよいですか?
- 21. ダブルクリックするとリストビュー項目の値を変更するにはどうすればよいですか?
- 22. QVBoxLayoutから(サブ)レイアウト項目を削除するにはどうすればよいですか?
- 23. tabBarスウィフトで項目や画像の色を変更するにはどうすればよいですか?
- 24. Wordpressのナビゲーション項目を画像に変更するにはどうすればよいですか?
- 25. React-NativeでListViewの1つの項目を選択するにはどうすればいいですか?
- 26. リスト内の項目を変数に置き換えるにはどうすればよいですか?
- 27. セッション内の配列内の項目を削除するにはどうすればよいですか? PHPを
- 28. ListViewの内部で画像を変更するにはどうすればよいですか?
- 29. React Material-ui Drawerメニュー項目の間隔を変更するにはどうすればよいですか?
- 30. ナビゲーション項目(ボタン)の背景画像を変更するにはどうすればよいですか?