У меня проблема с моим списком. Если я хочу изменить переменные в списке, я получил ошибку, потому что переменная не является статической. Может ли кто-нибудь объяснить мне, как я могу сделать listBox1 объекту?wpf listbox со статической переменной
<ListBox i:Name="listBox1" ItemsSource="{Binding MyItems}" MaxWidth="683" PreviewMouseDown="listView_PreviewMouseDown" IsSynchronizedWithCurrentItem="True" HorizontalAlignment="Left" Margin="0,452,0,0" Grid.Row="0" VerticalAlignment="Top" Width="Auto" SelectionChanged="listBox1_SelectionChanged" Height="Auto" >
<ListBoxItem>
<TextBlock Text="{Binding listboxwertextra}" />
</ListBoxItem>
</ListBox>
Мой класс maininformtation:
public class maininformation
{
public string listboxwertextra { get; set; }
}
Funktion:
public static void reloadlistbox()
{
List<maininformation> items = new List<maininformation>();
items.Add(new maininformation() { listboxwertextra = "hallo" });
listBox1.ItemsSource = items;
}
* У меня ошибка, потому что переменная не является статичной * ... Я считаю, что вы ошибаетесь. Что именно говорит ошибка? * Может кто-нибудь объяснить мне, как я могу сделать listBox1 объекту? * ... зачем? Что вы на самом деле хотите достичь здесь? – Sheridan
Статический метод не может иметь доступ к объекту списка. Вы хотите сделать this.listBox1.ItemsSource ... но statis не имеет этого, избавиться от статического в этом случае. – Maximus
Ссылка на объект требуется для нестатического поля, метода или свойства 'listbox1', я хочу вызвать функцию из другого класса, и он всегда говорит мне, что «public void reloadlistbox()» должен быть статическим – lacura