Created
May 26, 2017 12:12
-
-
Save AaronC81/2364e34438679f1c0b22b77bcf0ed0e0 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
using System; | |
using System.Collections.Generic; | |
using System.Linq; | |
using System.Text; | |
using System.Threading.Tasks; | |
using System.Windows; | |
using System.Windows.Controls; | |
using System.Windows.Data; | |
using System.Windows.Documents; | |
using System.Windows.Input; | |
using System.Windows.Media; | |
using System.Windows.Media.Imaging; | |
using System.Windows.Navigation; | |
using System.Windows.Shapes; | |
namespace DataGridTesting | |
{ | |
public struct TimetableDG { | |
public string Mon1 { get; set; } | |
public string Tue1 { get; set; } | |
public string Wed1 { get; set; } | |
public string Thu1 { get; set; } | |
public string Fri1 { get; set; } | |
public string Mon2 { get; set; } | |
public string Tue2 { get; set; } | |
public string Wed2 { get; set; } | |
public string Thu2 { get; set; } | |
public string Fri2 { get; set; } | |
} | |
// The datagrid needs days as columns and what as rows? | |
/* | |
* / Mon Tue Wed Thu Fri | |
* AM | |
* 1 | |
* 2 | |
* 3 | |
* LNCH | |
* 4 | |
* 5 | |
* PM | |
* | |
*/ | |
/// <summary> | |
/// Interaction logic for MainWindow.xaml | |
/// </summary> | |
public partial class MainWindow : Window | |
{ | |
public IEnumerable<TimetableDG> ConvertDisgustingListToStruct(List<List<List<string>>> input) | |
{ | |
TimetableDG UnpackListIntoTimetableDG(IEnumerable<List<string>> i) | |
{ | |
var x = i.ToList(); | |
try | |
{ | |
return new TimetableDG | |
{ | |
Mon1 = string.Join(", ", x[0]), | |
Tue1 = string.Join(", ", x[1]), | |
Wed1 = string.Join(", ", x[2]), | |
Thu1 = string.Join(", ", x[3]), | |
Fri1 = string.Join(", ", x[4]), | |
Mon2 = string.Join(", ", x[5]), | |
Tue2 = string.Join(", ", x[6]), | |
Wed2 = string.Join(", ", x[7]), | |
Thu2 = string.Join(", ", x[8]), | |
Fri2 = string.Join(", ", x[9]), | |
}; | |
} catch (Exception e) | |
{ | |
return new TimetableDG | |
{ | |
Mon1 = ".", | |
Tue1 = ".", | |
Wed1 = ".", | |
Thu1 = ".", | |
Fri1 = ".", | |
Mon2 = ".", | |
Tue2 = ".", | |
Wed2 = ".", | |
Thu2 = ".", | |
Fri2 = ".", | |
}; | |
} | |
} | |
// day is a list of periods: AM, 1, 2, 3, Lunch, 4, 5, PM | |
var amReg = UnpackListIntoTimetableDG(input.Select(x => x[0])); | |
var period1 = UnpackListIntoTimetableDG(input.Select(x => x[1])); | |
var period2 = UnpackListIntoTimetableDG(input.Select(x => x[2])); | |
var period3 = UnpackListIntoTimetableDG(input.Select(x => x[3])); | |
var lnch = UnpackListIntoTimetableDG(input.Select(x => x[4])); | |
var period4 = UnpackListIntoTimetableDG(input.Select(x => x[5])); | |
var period5 = UnpackListIntoTimetableDG(input.Select(x => x[6])); | |
var pmReg = UnpackListIntoTimetableDG(input.Select(x => x[7])); | |
yield return amReg; | |
yield return period1; | |
yield return period2; | |
yield return period3; | |
yield return lnch; | |
yield return period4; | |
yield return period5; | |
yield return pmReg; | |
} | |
public MainWindow() | |
{ | |
InitializeComponent(); | |
var enumerable = ConvertDisgustingListToStruct(new List<List<List<string>>> | |
{ | |
new List<List<string>> | |
{ | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - AM Reg" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 1" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 2" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 3" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Lunch" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 4" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 5" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - PM Reg" | |
}, | |
}, | |
new List<List<string>> | |
{ | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - AM Reg" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 1" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 2" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 3" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Lunch" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 4" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 5" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - PM Reg" | |
}, | |
}, | |
new List<List<string>> | |
{ | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - AM Reg" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 1" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 2" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 3" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Lunch" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 4" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 5" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - PM Reg" | |
}, | |
}, | |
new List<List<string>> | |
{ | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - AM Reg" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 1" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 2" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 3" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Lunch" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 4" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 5" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - PM Reg" | |
}, | |
}, | |
new List<List<string>> | |
{ | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - AM Reg" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 1" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 2" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 3" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Lunch" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 4" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 5" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - PM Reg" | |
}, | |
}, | |
new List<List<string>> | |
{ | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - AM Reg" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 1" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 2" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 3" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Lunch" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 4" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 5" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - PM Reg" | |
}, | |
}, | |
new List<List<string>> | |
{ | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - AM Reg" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 1" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 2" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 3" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Lunch" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 4" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 5" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - PM Reg" | |
}, | |
}, | |
new List<List<string>> | |
{ | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - AM Reg" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 1" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 2" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 3" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Lunch" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 4" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 5" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - PM Reg" | |
}, | |
}, | |
new List<List<string>> | |
{ | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - AM Reg" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 1" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 2" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 3" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Lunch" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 4" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 5" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - PM Reg" | |
}, | |
}, | |
new List<List<string>> | |
{ | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - AM Reg" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 1" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 2" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 3" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Lunch" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 4" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - Period 5" | |
}, | |
new List<string> | |
{ | |
"CLASS NAME", "ROOM NAME", "TEACHER INITIALS - PM Reg" | |
}, | |
}, | |
}).ToList(); | |
datagrid.ItemsSource = enumerable; | |
} | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment