Как упоминалось в @kgr, MySQL 8.0.11 внесла некоторые изменения в метод аутентификации.
Я открыл отчет об ошибке phpMyAdmin об этом: https://github.com/phpmyadmin /phpmyadmin/issues/14220.
MySQL 8.0.4-rc отлично работал для меня, и я вроде как смешно для MySQL сделать такое изменение в выпуске уровня патча.
Событие с изменением статического свойства должно быть объявлено в классе WiresharkFile
(т. е. класс, который также объявляет статическое свойство). Он не будет работать, если он объявлен в базовом классе.
public class WiresharkFile : BaseObservableObject
{
public static event PropertyChangedEventHandler StaticPropertyChanged;
private static void OnStaticPropertyChanged(string propertyName)
{
var handler = StaticPropertyChanged;
if (handler != null)
{
handler(null, new PropertyChangedEventArgs(propertyName));
}
}
// static property here
}
Поскольку ваш create PropertyChangedEventHandler не является частью реального интерфейса INotifyPropertyChanged, привязка не распознает, что было вызвано событие уведомления, поэтому оно не вытаскивает новое значение из TotalPacketsSent. Чтобы сделать обновление привязки, попробуйте что-то вроде этого: Поместите в класс WiresharkFile:
private static WiresharkFile This;
public WiresharkFile()
{
This = this;
}
private static volatile int _totalPacketsSent;
public static int TotalPacketsSent
{
get { return _totalPacketsSent; }
set
{
_totalPacketsSent = value;
OnStaticPropertyChanged(This);
}
}
- Код обработчика:
protected static void OnStaticPropertyChanged(object sender, [CallerMemberName]string propertyName = null)
{
var baseObservable = sender as BaseObservableObject;
if(baseObservable == null) return;
baseObservable.OnPropertyChanged(propertyName);
}
, на мой взгляд, вам не нужен PropertyChangedEventHandler событие в классе BaseObservableObject.
приветствует,