Removed unnecessary class and simplified.
This commit is contained in:
parent
a86185e644
commit
e36ea70cd1
18
LibationWinForms/DataGridViewImageButtonCell.cs
Normal file
18
LibationWinForms/DataGridViewImageButtonCell.cs
Normal file
@ -0,0 +1,18 @@
|
||||
using System.Drawing;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace LibationWinForms
|
||||
{
|
||||
public class DataGridViewImageButtonCell : DataGridViewButtonCell
|
||||
{
|
||||
protected void DrawButtonImage(Graphics graphics, Image image, Rectangle cellBounds)
|
||||
{
|
||||
var w = image.Width;
|
||||
var h = image.Height;
|
||||
var x = cellBounds.Left + (cellBounds.Width - w) / 2;
|
||||
var y = cellBounds.Top + (cellBounds.Height - h) / 2;
|
||||
|
||||
graphics.DrawImage(image, new Rectangle(x, y, w, h));
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1,50 +0,0 @@
|
||||
using System.Drawing;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace LibationWinForms
|
||||
{
|
||||
public abstract class DataGridViewImageButtonColumn : DataGridViewButtonColumn
|
||||
{
|
||||
private DataGridViewImageButtonCell _cellTemplate;
|
||||
public override DataGridViewCell CellTemplate
|
||||
{
|
||||
get => GetCellTemplate();
|
||||
set
|
||||
{
|
||||
if (value is DataGridViewImageButtonCell cellTemplate)
|
||||
_cellTemplate = cellTemplate;
|
||||
}
|
||||
}
|
||||
|
||||
protected abstract DataGridViewImageButtonCell NewCell();
|
||||
|
||||
private DataGridViewImageButtonCell GetCellTemplate()
|
||||
{
|
||||
if (_cellTemplate is null)
|
||||
return NewCell();
|
||||
else
|
||||
return _cellTemplate;
|
||||
}
|
||||
|
||||
public override object Clone()
|
||||
{
|
||||
var clone = (DataGridViewImageButtonColumn)base.Clone();
|
||||
clone._cellTemplate = _cellTemplate;
|
||||
|
||||
return clone;
|
||||
}
|
||||
}
|
||||
|
||||
public class DataGridViewImageButtonCell : DataGridViewButtonCell
|
||||
{
|
||||
protected void DrawButtonImage(Graphics graphics, Image image, Rectangle cellBounds)
|
||||
{
|
||||
var w = image.Width;
|
||||
var h = image.Height;
|
||||
var x = cellBounds.Left + (cellBounds.Width - w) / 2;
|
||||
var y = cellBounds.Top + (cellBounds.Height - h) / 2;
|
||||
|
||||
graphics.DrawImage(image, new Rectangle(x, y, w, h));
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -3,10 +3,12 @@ using System.Windows.Forms;
|
||||
|
||||
namespace LibationWinForms
|
||||
{
|
||||
public class EditTagsDataGridViewImageButtonColumn : DataGridViewImageButtonColumn
|
||||
public class EditTagsDataGridViewImageButtonColumn : DataGridViewButtonColumn
|
||||
{
|
||||
protected override DataGridViewImageButtonCell NewCell()
|
||||
=> new EditTagsDataGridViewImageButtonCell();
|
||||
public EditTagsDataGridViewImageButtonColumn()
|
||||
{
|
||||
CellTemplate = new EditTagsDataGridViewImageButtonCell();
|
||||
}
|
||||
}
|
||||
|
||||
internal class EditTagsDataGridViewImageButtonCell : DataGridViewImageButtonCell
|
||||
|
||||
@ -6,10 +6,12 @@ using System.Linq;
|
||||
|
||||
namespace LibationWinForms
|
||||
{
|
||||
public class LiberateDataGridViewImageButtonColumn : DataGridViewImageButtonColumn
|
||||
public class LiberateDataGridViewImageButtonColumn : DataGridViewButtonColumn
|
||||
{
|
||||
protected override DataGridViewImageButtonCell NewCell()
|
||||
=> new LiberateDataGridViewImageButtonCell();
|
||||
public LiberateDataGridViewImageButtonColumn()
|
||||
{
|
||||
CellTemplate = new LiberateDataGridViewImageButtonCell();
|
||||
}
|
||||
}
|
||||
|
||||
internal class LiberateDataGridViewImageButtonCell : DataGridViewImageButtonCell
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user