private根據字串的字首,分別對文字顏色進行渲染。void form1_load(object
sender, eventargs e)
private
void listbox1_drawitem(object
sender, drawitemeventargs e)
e.graphics.fillrectangle(
newsolidbrush(vcolor), e.bounds);
e.graphics.drawstring(((listbox)sender).items[e.index].tostring(), e.font,
newsolidbrush(e.forecolor), e.bounds);
e.drawfocusrectangle();
}
//效果如下,當輸入「你好」並按新增按鈕的時候相應的listbox的內容變為的綠色,輸入「你壞」的時候變為了紅色,達到了我們的要求目的:listbox drawitem事件響應函式
private
void listbox1_drawitem(object
sender, drawitemeventargs e)
else
if (listbox1.items[e.index].tostring().indexof("
你壞") != -1
)
//焦點框
e.drawfocusrectangle();
//文字
e.graphics.drawstring(listbox1.items[e.index].tostring(), e.font, mybsh, e.bounds, stringformat.genericdefault);
}
}
要實現這個效果很簡單,只需自定義乙個類繼承listbox,然後重寫ondrawitem事件就可以了,下面看**
classview codeclistbox:listbox
else
e.drawfocusrectangle();
g.dispose();
base
.ondrawitem(e);
}//捕獲訊息,畫listbox邊框
protected
override
void wndproc(ref
message m)
base.wndproc(ref
m); }}//
應用如下:
public
partial
class
form1 : form
private
clistbox mylistbox;
private
void form1_load(object
sender, eventargs e)
}
效果如下:
參考文章
順德早茶 , 在c#中控制listbox某一行的字型顏色
c#中動態修改listbox的item的顏色的方法
gyzsky, listbox隔行顯示不同顏色
例2 一種動態渲染顏色的方式
el table展開行中通過事件控制某一行的展開
在el table中type expand 時,可以設定展開行,但有時候,需要我們通過一些別的事件來觸發展開行事件,如何來控制某一行的展開與閉合,這是本篇部落格所講訴的。togglerowexpansion,在官網中有描述過這一方法可以用來切換某一行的展開狀態 但是具體 如何書寫,沒有具體的介紹。首...
更改檔案,某一行
1 deffetch data 2print 這是查詢功能 3 tag false 4 data aaaa s n data 5 res data 6 with open bbb r encoding gbk as file 7for i in file 8if i data 9 tag true ...
python刪除某一行
整理了網路上的一些方法,一般有兩種方法 第一種 是先把檔案讀入記憶體,在記憶體中修改後再寫入原始檔。例子 將內容包含 123 的所有行刪去 with open c users lai desktop 1.txt r as r lines r.readlines with open c users l...