我正在尋找一種方式來開發這樣的: http://img15.hostingpics.net/pics/193313Capture.jpg年曆的Winform C#
正如你所看到的,我會需要添加事件(繪製矩形)轉換爲日曆。雖然我無數小時的研究,但我找不到任何接近我想要的東西,所以我會從頭開始。
任何想法,我如何能夠做到這一點?我應該使用datagridview嗎?
我正在尋找一種方式來開發這樣的: http://img15.hostingpics.net/pics/193313Capture.jpg年曆的Winform C#
正如你所看到的,我會需要添加事件(繪製矩形)轉換爲日曆。雖然我無數小時的研究,但我找不到任何接近我想要的東西,所以我會從頭開始。
任何想法,我如何能夠做到這一點?我應該使用datagridview嗎?
達到此目的的最佳方法是使用TableLayoutPanel Class。特別看方法SetColumnSpan和SetRowSpan
換畫從here
借private void Form_Load(object sender, EventArgs e) {
this.tableLayoutPanel1.CellPaint += new TableLayoutCellPaintEventHandler(tableLayoutPanel1_CellPaint);
}
void tableLayoutPanel1_CellPaint(object sender, TableLayoutCellPaintEventArgs e)
{
if (e.Row == 0 || e.Row == 2) {
Graphics g = e.Graphics;
Rectangle r = e.CellBounds;
g.FillRectangle(Brushes.Blue, r);
}
}
該日曆將處於只讀模式。我沒有想過繪圖庫,認爲開發太痛苦了。實際上可能很有趣。 我也會研究TableLayoutPanel類,看起來好像我漫長的一天。 – user2071260 2013-03-05 09:10:53
@ user2071260 so tablelayoutpanel剛剛完美,請參閱編輯 – VladL 2013-03-05 09:42:31
我瞭解邏輯。謝謝你,先生 !! – user2071260 2013-03-05 10:06:32
謝謝你的問題不同細胞中的代碼!但是,這並不是Stack Overflow可以回答的問題。 [閱讀本文獲得更多信息](http://stackoverflow.com/faq#dontask)一旦你對你正在編寫的代碼遇到的具體問題有特定的疑問,請隨時返回。 – 2013-03-05 08:30:19
@AndrewBarber在主持人選舉中好運!閱讀這個有用的回覆讓我覺得我正確地提升了你的提名。 – Default 2013-03-05 08:34:24
如果你想畫很多,比如箭頭,很多線條,你可以試試WPF而不是Winforms。如果你只需要顯示那個日曆而不編輯它,我可能只使用繪圖庫而沒有數據網格。 – SwissCoder 2013-03-05 08:37:38