This commit is contained in:
艾竹
2023-03-18 22:50:00 +08:00
parent 9b3c2633a7
commit 8d87f61c07
5 changed files with 117 additions and 22 deletions

View File

@@ -4,6 +4,7 @@ using System.Collections.ObjectModel;
using System.ComponentModel;
using System.IO;
using System.Linq;
using System.Security.Policy;
using System.Text;
using System.Windows;
using System.Windows.Controls;
@@ -227,7 +228,7 @@ namespace AIStudio.Wpf.Mind.ViewModels
#endregion
#region
private LinkInfo _linkInfo;
private LinkInfo _linkInfo = new LinkInfo();
public LinkInfo LinkInfo
{
get
@@ -236,11 +237,19 @@ namespace AIStudio.Wpf.Mind.ViewModels
}
set
{
if (_linkInfo != null)
{
_linkInfo.PropertyChanged -= Item_PropertyChanged;
}
SetProperty(ref _linkInfo, value);
if (_linkInfo != null)
{
_linkInfo.PropertyChanged += Item_PropertyChanged; ;
}
}
}
private ImageInfo _imageInfo;
private ImageInfo _imageInfo = new ImageInfo();
public ImageInfo ImageInfo
{
get
@@ -249,7 +258,15 @@ namespace AIStudio.Wpf.Mind.ViewModels
}
set
{
if (_imageInfo != null)
{
_imageInfo.PropertyChanged -= Item_PropertyChanged;
}
SetProperty(ref _imageInfo, value);
if (_imageInfo != null)
{
_imageInfo.PropertyChanged += Item_PropertyChanged;
}
}
}
@@ -504,24 +521,25 @@ namespace AIStudio.Wpf.Mind.ViewModels
break;
}
case nameof(Rate):
case nameof(Priority):
case nameof(LinkInfo):
case nameof(Priority):
case nameof(Remark):
case nameof(LinkInfo.Link):
{
if (e is ValuePropertyChangedEventArgs valuePropertyChangedEventArgs)
{
if (valuePropertyChangedEventArgs.OldValue == null && valuePropertyChangedEventArgs.NewValue != null)
if (string.IsNullOrEmpty(valuePropertyChangedEventArgs.OldValue?.ToString()) && !string.IsNullOrEmpty(valuePropertyChangedEventArgs.NewValue?.ToString()))
{
ItemWidth += 24;
}
else if (valuePropertyChangedEventArgs.OldValue != null && valuePropertyChangedEventArgs.NewValue == null)
else if (!string.IsNullOrEmpty(valuePropertyChangedEventArgs.OldValue?.ToString()) && string.IsNullOrEmpty(valuePropertyChangedEventArgs.NewValue?.ToString()))
{
ItemWidth -= 24;
}
}
break;
}
case nameof(ImageInfo.Url):
break;
}
}
@@ -574,16 +592,16 @@ namespace AIStudio.Wpf.Mind.ViewModels
public class LinkInfo : BindableBase
{
private string _url;
public string Url
private string _link;
public string Link
{
get
{
return _url;
return _link;
}
set
{
SetProperty(ref _url, value);
SetProperty(ref _link, value);
}
}