سؤال

أتمنى لو كان هناك تلميح الميدانية في HyperLinkField كما أن هناك واحدة في الارتباط التشعبي.أنا خلق HyperLinkField طريق الرمز قبل ملزم إلى مصدر البيانات:

HyperLinkField hl = new HyperLinkField(); 
hl.DataNavigateUrlFields = new string[] { "col" };
hl.DataNavigateUrlFormatString = "{0}";
hl.DataTextField = "Foo";

هل هناك أي طريقة أيضا تعيين القيمة إلى شيء مما سيجعل كتلميح (أو alt النص) ؟ أي مساعدة سوف يكون موضع تقدير.

هل كانت مفيدة؟

المحلول

هذا صحيح, لا يوجد تلميح/alt الخاصية text في HyperlinkField.للالتفاف على هذا القصور ، تحتاج إلى استخدام قالب الحقل إضافة منتظم تحكم الارتباط التشعبي.

<asp:TemplateField HeaderText="Href">
    <ItemTemplate>
       <asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl='<%#
          Eval("Href") %>' Text='<%# Eval("Href") %>' ToolTip='<%# Eval("Text")         %>'> 
       </asp:HyperLink>
    </ItemTemplate>
</asp:TemplateField>

بيد أن تفعل هذا في برنامجي يتطلب الكثير من العمل.تحتاج إلى إنشاء الخاصة بك الطبقة التي تطبق ITemplate واجهة.هنا البرنامج التعليمي على هذا.

نصائح أخرى

والشرط الخاص بك يمكن accompished في <asp:HyperlinkField> نفسها عن طريق إضافة تلميح لتلك الخلية المحددة في الحدث RowDataBound من GridView. بعد ربط GridView لمصدر البيانات الخاص بك يمكنك القيام بذلك في الحدث RowDataBound كما يلي:

if (e.Row.RowType == DataControlRowType.DataRow)
{
    e.Row.Cells[0].ToolTip = "Your tooltip text";
}

وعلى الرغم من أنك قد قبلت إجابة أخرى، قد يكون جوابي مفيدة لبعض المستخدمين الآخرين!

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top