Torna al Thread

[CODE] //dentro qualche routine TuoContenitore.Controls.AddRange(GetTimeButtonRange(new TimeSpan(0, 0, 0), new TimeSpan(8, 24, 0),15, 5, 150, 20)); //da qualche parte nella classe //StartTime e StopTime indicano inizio e fine dell'intervallo di tempo interessato //Interval indica la frequenza in minuti che divide l'intervallo di tempo interessato //NColuns indica il numero di colonne che si vorrebbe ottenre //ButtonW e ButtonH indicano la larghezza e l'altezza del bottone static Button[] GetTimeButtonRange(TimeSpan StartTime, TimeSpan StopTime, int Interval, int NColumns, int ButtonW, int ButtonH) { return Enumerable.Range(0, Convert.ToInt32(Math.Truncate(StopTime.Subtract(StartTime).TotalMinutes / Interval)) + 1) .Select(m => new Button() { Text = StartTime.Add(new TimeSpan(0, (Interval * m), 0)).ToString(), Height = ButtonH, Width = ButtonW, Top = ButtonH * (m / NColumns), Left = ButtonW * (m % NColumns) }).ToArray(); } [/CODE]
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5