GridView와 같은 일부 작업을 수행하는 클래스를 System.Web.UI.WebControls.WebControl에서 상속 받았습니다.asp.net의 DataBinder.Eval 오류
public class IHGridView : System.Web.UI.WebControls.WebControl
{
// inside here, actually return Repeater class.
protected override void OnInit(EventArgs e)
{
_repeater.ItemTemplate = new IHGridItemTemplate(ListItemType.Item, this.Columns);
this.Controls.Add(_repeater);
}
}
또한 IHGridView에서 내 리피터 용 ItemTemplate을 만들었습니다.
public class IHGridItemTemplate : ITemplate
{
}
IHGridView 클래스는 리피터와 일부 HTML 코드를 돌려줍니다 만, 편리 성에서 나는 몇 가지 물건을 만든 deveop 할 수 있습니다.
public class Columns : StateManagedCollection
{
}
public class IHBoundFieldBase : IStateManager
{
}
public class IHLabelField : IHBoundFieldBase
{
}
지금 내 영문, 나는 아래처럼 이것을 사용할 수 있습니다 :
<cc1:IHGridView ID="IHGridView1" runat="server" EditMode="View">
<Columns>
<cc1:IHLabelField ID="IHLabelField7" DataField="PERSON_NAME" HeaderText="PersonName" />
</Columns>
</cc1:IHGridView>
지금 내가 문제가 함께 제공됩니다. aspx에서 DataBinder.Eval을 사용할 수 없습니다.
<cc1:IHLabelField ID="IHLabelField7" HeaderText="PersonName" Text='<%# DataBinder.Eval(Container.DataItem, "PERSON_NAME") %>' />
이렇게하면 오류가 발생합니다. 오류 메시지는 아래와 같습니다. CS1061 : 'System.Web.UI.Control'에 'DataItem'의 정의가 없습니다. 'System.Web.UI.Control'의 첫 번째 인수에는 확장 가능한 메서드 'DataItem'이 없습니다. 루 브릭 또는 어셈블리 참조를 사용하고 있는지 확인하십시오. 이것은 한국어로 작성되었지만 영어로 번역되었습니다. 누구나이 문제를 해결할 수있는 단서를 줄 수 있습니까?
감사합니다 도움이되기를 바랍니다. 나는 마침내 해결할 단서를 얻었다. –