Kayıt silmek için silme bağlantısına sahip bir GridView'ım var. Bir DeleteButtonField sınıfı oluşturdum ancak metni bir görüntü ile değiştirmek istiyorum (bir simge). Mümkün mü? Benim DeleteButtonField sınıfı var buradaBir ButtonField'ı GridView'da bir görüntüyle değiştirmek mümkün mü?
<asp:GridView
ID="GridView1"
runat="server"
<.. removed dome properties ..>
>
<Columns>
<CustomControls:DeleteButtonField ConfirmText="Delete this record?" />
<.. other columns ..>
</Columns>
</asp:GridView>
ve:
using System;
using System.Web.UI.WebControls;
namespace CustomControls
{
public class DeleteButtonField : ButtonField
{
private string _confirmText = "Delete this record?";
public string ConfirmText
{
get { return _confirmText; }
set { _confirmText = value; }
}
public DeleteButtonField()
{
this.CommandName = "Delete";
this.Text = "Delete";
this.ImageUrl = "App_GlobalResources/Del.png"; // doesn't work
}
public override void InitializeCell(DataControlFieldCell cell, DataControlCellType cellType, DataControlRowState rowState, int rowIndex)
{
base.InitializeCell(cell, cellType, rowState, rowIndex);
if (cellType == DataControlCellType.DataCell)
{
WebControl button = (WebControl)cell.Controls[0];
button.Attributes["onclick"] = String.Format("return confirm('{0}');", _confirmText);
}
}
}
}
bu mümkün mü İşte benim GridView var? Gördüğünüz gibi, DeleteButtonField.cs sınıfıma şu kodu ekledim ancak hiçbir etkisi olmadı: this.ImageUrl = "App_GlobalResources/Del.png";
Teşekkürler.
@Brian, Bir sorunum var. Görüntüyü tıkladığımda kayıtlar şimdi silinmez. Neyin yanlış gittiğini biliyor musun? –
Mark, yukarıdaki kodlara bir göz atın. Şimdi çalışmalıyım. Orijinal olarak sizin için bir TemplateField örneği yazacağım gibi silahlarıma takılmalıydım. İşleri daha iyi işler (geri gönderimler, vb.). :) –
@Brian, bunun için teşekkürler. Bunu çalıştırdığımda ASP.NET Geliştirme web sunucusu çöküyor! –