2013-05-04 2 views
0

Я сделал часы, и я хочу, чтобы пользователи могли выбирать часовой пояс, но часы могут длиться более 24 часов, что не должно быть возможным, оно должно начинаться с 00:00.Проверьте, соответствует ли метка конкретному значению

Это то, что я придумал до сих пор, но я получаю ошибку Input string was not in a correct format.

if (Convert.ToInt32(label1.Text) > 24) 
{ 
    int test = Convert.ToInt32(label1.Text) - 24; 
    label1.Text = test.ToString(); 
} 

Я попытался искать вокруг, и единственное, что я мог придумать это tryparse но Безразлично Не работайте либо

+1

делает ваш 'label1.Text' содержит' 00: 00' при попытке разобрать его? (или что-то подобное, но отформатированное как 'hh: mn') – ppetrov

+0

Покажите нам код, который заставляет часы работать ... –

+0

label1.Text = (DateTime.Now.Hour + comboBox1.SelectedIndex - 12 +": "+ DateTime .Now.Minute + ":" + DateTime.Now.Second) .ToString(); combobox1 содержит -12 и до 12. – lizart

ответ

3

У вас должен быть экземпляр бизнес-объекта, который представляет вашу сущность объекта. И метка должна отображать значения/свойства этого бизнес-объекта.

public class Clock 
{ 

    private int _hour; 

    public void Increment() 
    { 
     if (_hour > 23) 
      _hour = 0; 
     else 
      _hour++; 

     // Raise event 
    } 

    public event EventHandler HourChanged; 

    public int Hour { get { return _hour; } } 
} 

этот класс создании экземпляра в вас приложения Windows Forms, знак события и показать Hour собственности

Смежные вопросы