Я хочу, чтобы наследовать этот классКак наследовать класс?
[DataContract]
public class Item
{
string _name;
string _path;
long _size;
byte[] _image;
public Item(string Name, string path, long Size, byte[] image)
{
_name = Name;
_path = path;
_size = Size;
_image = image;
}
[DataMember]
public string Name
{
get { return _name; }
set { }
}
[DataMember]
public string Path
{
get { return _path; }
set { }
}
[DataMember]
public long Size
{
get { return _size; }
set { }
}
[DataMember]
public string SizeToString
{
get
{
if (_size == 0) return "Folder";
return CnvrtUnit(_size);
}
set { }
}
}
Я пытался наследовать его:
public class ItemEx : Item
{
public ImageSource Icon
{
get
{
BitmapImage bi = new BitmapImage();
using (MemoryStream ms = new MemoryStream(_image))
{
bi.BeginInit();
bi.CacheOption = BitmapCacheOption.OnLoad;
bi.StreamSource = ms;
bi.EndInit();
}
return bi;
}
set { }
}
}
тогда, когда я задаю экземпляр ItemEx
к экземпляру «Пункт», он не работает
public void Assign(Item item)
{
ItemEx x = item as ItemEx; //its still null
}
Почему это происходит? и что я должен сделать, чтобы заставить его работать?
PS:Мне нужно наследовать этот класс, потому что он пришел из службы WCF, которая не проходит ImageSource
, поэтому я прошел его как byte[]
то элемент должен содержать ImageSource под названием «Икона» для WPF MVVM цели ,
Вы не можете переопределить класс. Вы можете наследовать от методов класса и переопределения, свойств и т. Д. – MAV
Он правильно унаследовал, но неправильно использовал терминологию. –
Да, моя ошибка, как наследовать этот класс –