Comments (4)
How is IsChecked defined?
from avalonia.
The row ViewModel needs to be ObservableObject as well. That's by design.
from avalonia.
Thank you for your kind advice and your willingness to help me.
You asked me about the implementation of the IsChecked property. Here is my class that is part of the ObservableCollection:
public partial class Student : ObservableObject, INotifyPropertyChanged
{
public int StudentId { get; set; }
public string Name { get; set; } = null!;
public string Surname { get; set; } = null!;
public int StudentGroupId { get; set; }
public string Patronymic { get; set; } = null!;
public short AdmissionDate { get; set; }
public int StudentStatusId { get; set; }
public string Fio { get; set; } = null!;
public virtual Group? StudentGroup { get; set; }
public virtual StudentsStatus? StudentStatus { get; set; }
public virtual ICollection<StudentsAndPayment> StudentsAndPayments { get; set; } = new List<StudentsAndPayment>();
bool _isChecked = false;
[NotMapped]
public bool IsChecked { get => _isChecked; set { _isChecked = value; OnPropertyChanged(nameof(IsChecked)); } }
public event PropertyChangedEventHandler PropertyChanged;
protected virtual void OnPropertyChanged(string propertyName)
{
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
}
public bool Equals(Student other)
{
if (other == null) return false;
return Fio == other.Fio && StudentGroupId == other.StudentGroupId && StudentStatusId == other.StudentStatusId && AdmissionDate == other.AdmissionDate && Name == other.Name &&
Surname == other.Surname && Patronymic == other.Patronymic;
}
}
I think this is not the best solution, as INotifyPropertyChanged is already present. Is there any way to mark the field "_isChecked" as an [ObservableProperty] and [NotMapped]? I need it in my case...
from avalonia.
Okay, I've just figured it out. Thanks!
public partial class Student : ObservableObject
{
public int StudentId { get; set; }
public string Name { get; set; } = null!;
public string Surname { get; set; } = null!;
public int StudentGroupId { get; set; }
public string Patronymic { get; set; } = null!;
public short AdmissionDate { get; set; }
public int StudentStatusId { get; set; }
public string Fio { get; set; } = null!;
public virtual Group? StudentGroup { get; set; }
public virtual StudentsStatus? StudentStatus { get; set; }
public virtual ICollection<StudentsAndPayment> StudentsAndPayments { get; set; } = new List<StudentsAndPayment>();
[ObservableProperty]
[property: NotMapped]
bool _isChecked = false;
public bool Equals(Student other)
{
if (other == null) return false;
return Fio == other.Fio && StudentGroupId == other.StudentGroupId && StudentStatusId == other.StudentStatusId && AdmissionDate == other.AdmissionDate && Name == other.Name &&
Surname == other.Surname && Patronymic == other.Patronymic;
}
}
from avalonia.
Related Issues (20)
- Glitchy ListBox when adding items & setting SelectedIndex HOT 6
- When DataGrid is not set to a height, dynamically adding rows will not widen the height HOT 4
- Application doesn't terminate when unhandled exception is thrown from ReactiveCommand handler HOT 3
- EagerParentStackEnumerator is incompatible with XAML built with older avalonia versions HOT 2
- DataGridCollectionView with Filter items dissapear or duplicate
- DataGridTextColumn IsReadOnly will be True after AOT HOT 2
- CustomDrawOperation.Render won't be called if only drawingContext.Custom is present in override Render method HOT 1
- Showing Window from WinForms app doesn't allow text input HOT 4
- Regression in 11.1 Beta2 and RC1 concerning EmbeddableControlRoot's EmbeddableWindow implementation on Windows HOT 5
- PointerTouchPadGestureSwipe not work in macos
- AvaloniaResource inclusion results in erroneous embedding when resources are outside of project folder HOT 2
- Changing the resolution of headless rendering
- D3D11CreateDevice+Hardware crashes and fallback doesn't work HOT 1
- Android SystemBar Icons theme (Light, Dark) in 11.1.0-rc1
- IsHitTestVisible set to false on parent element ignores IsHitTestVisible set to true for child elements
- NullReferenceException in Avalonia.Skia when creating a new Bitmap HOT 2
- Regression in 11.1: MultiValueConverter returning BindingNotification throws InvalidCastException HOT 4
- Behaviour of !! operator has changed in 11.1 HOT 6
- Tab Key Navigation not working when OverlayPopups is set to true
- System.InvalidOperationException: Neither DBus nor GTK are available on the system HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from avalonia.