Здравствуйте, в файле есть данные, которые я считываю и пытаюсь вывести в окне, но данные не выводятся. Как заставить работать этого трудягу?
P.S.: знак "=" используется как разделитель между записями.
public partial class recordsTable : Window
{
public recordsTable()
{
ShowRecords();
InitializeComponent();
}
public static class MyStackPanel
{
public static StackPanel stackPanel2;
public static void CreateStackPanel()
{
StackPanel stackPanel = new StackPanel();
stackPanel.Orientation = System.Windows.Controls.Orientation.Horizontal;
stackPanel.HorizontalAlignment = HorizontalAlignment.Center;
stackPanel.VerticalAlignment = VerticalAlignment.Top;
stackPanel2 = stackPanel;
}
public static void AddInStackPanel(Border item)
{
Debug.Write(item);
Debug.WriteLine("ITEM", item);
stackPanel2.Children.Add(item);
}
}
private void ShowRecords()
{
int i = 0;
bool isNumberPosition = false;
string path = AppDomain.CurrentDomain.BaseDirectory + "/Resources/records.txt";
using (StreamReader sr = new StreamReader(path, System.Text.Encoding.Default))
{
string line;
while ((line = sr.ReadLine()) != null)
{
if(line == "=")
{
MyStackPanel.CreateStackPanel();
isNumberPosition = true;
if(i > 0)
{
RootStackPanel.Children.Add(MyStackPanel.stackPanel2);
}
i++;
continue;
}
if(isNumberPosition)
{
MyStackPanel.AddInStackPanel((CreateLabel(line, 40)));
isNumberPosition = false;
}
else
{
MyStackPanel.AddInStackPanel((CreateLabel(line)));
}
}
}
}
private Border CreateLabel(string value, int width = 150)
{
Border border = new Border();
Label label = new Label();
border.BorderBrush = Brushes.Gray;
border.BorderThickness = new Thickness(2);
label.FontSize = 16;
label.Width = width;
label.Content = value;
border.Child = label;
Debug.Write(label);
Debug.WriteLine("LABEL", label);
return border;
}
}