Нарисуйте и очистите строку над элементом управления C # - PullRequest
0 голосов
/ 30 июня 2011

После некоторого поиска в Google у меня было несколько примеров, но ни один из них не дал мне то, что мне нужно.

Мне нужно записать строку (WriteString()) в элемент управления в WinForm на ButtonClick и мне нужно обновить этот Draw, потому что я пытаюсь записать дату в элемент управления, системную дату.

Таким образом, каждый раз, когда пользователь нажимает на эту кнопку, DateTime.Now.ToString(); должен быть включен в элемент управления.

Bests

Ответы [ 3 ]

0 голосов
/ 30 июня 2011

Или вы можете изменить метод OnPaint элемента управления, чтобы переопределить его отображение.В объекте Graphics есть метод, позволяющий записать строку g.DrawString

0 голосов
/ 30 июня 2011

нарисуйте строку на этикетке

этот URL, несомненно, поможет вам

код, написанный там

void Label_OnPaint(object sender, PaintEventArgs e) {
  base.OnPaint(e);
  Label lbl = sender as Label;
  if (lbl != null) {
    string Text = lbl.Text;
    e.Graphics.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias;
    if (myShowShadow) { // draw the shadow first!
      e.Graphics.DrawString(Text, lbl.Font, new SolidBrush(myShadowColor), myShadowOffset, StringFormat.GenericDefault);
    }
    e.Graphics.DrawString(Text, lbl.Font, new SolidBrush(lbl.ForeColor), 0, 0, StringFormat.GenericDefault);
  }
}
0 голосов
/ 30 июня 2011

Вы должны рассмотреть возможность использования winforms Label и Timer для этого.

...