Дерево дерева ASP.Net усекает текст узла - PullRequest
1 голос
/ 15 ноября 2011

У меня есть древовидное представление на моей странице ASP.Net, и по какой-то причине текст на некоторых узлах обрезается, я программно добавляю все узлы и знаю о существующей проблеме, перечисленной здесь: http://support.microsoft.com/?scid=kb%3Ben-us%3B937215&x=8&y=13 однакоЯ не изменяю шрифт, и, как вы видите в приведенном ниже коде, это исправление не работает для меня.

 Private Sub populateTreeView()

'Code that gets the data is here

      Dim ParentIds As List(Of Integer) = New List(Of Integer)

      For Each row As DataRow In ds.Rows

         If ParentIds.Contains(row("ParentID")) Then
            '' Do Nothing 
         Else
            ParentIds.Add(row("ParentID"))
         End If
      Next

      For Each Parent As Integer In ParentIds
         Dim parentNode As New System.Web.UI.WebControls.TreeNode

         For Each child In ds.Rows
            If (child("ParentID") = Parent) Then

               Dim childNode As New System.Web.UI.WebControls.TreeNode

               parentNode.Text = child("ParentDescription")
               parentNode.Value = child("ParentID")
               parentNode.Expanded = False

               childNode.Text = child("ChildDescription")
               childNode.Value = child("ChildID")


               parentNode.SelectAction = TreeNodeSelectAction.None
               parentNode.ChildNodes.Add(childNode)
            End If
         Next
         trvItem.Nodes.Add(parentNode)
      Next

      'This is just added to test the MS fix
      trvItem.Nodes(0).Text += String.Empty
   End Sub

Странно то, что эта проблема появляется только в IE, я проверил ее в Chrome иFirefox и оба браузера отлично отображают текст.

Когда я выбираю узел, это решает проблему, и весь текст отображается как обычно.

Любые идеи относительно того, что здесь происходит, было бы замечательно, поскольку я сейчас ничего не понимаю.

Спасибо

Ответы [ 2 ]

2 голосов
/ 02 ноября 2012
tv1.LabelEdit = True

tv1.Nodes(0).Nodes(0).BeginEdit()

tv1.Nodes(0).Nodes(0).NodeFont = oNewFont

tv1.Nodes(0).Nodes(0).EndEdit(False)

tv1.LabelEdit = False
0 голосов
/ 25 ноября 2011

Отметив это как закрытое, так как я так и не получил ответ, который решил проблему.

Мне удалось обойти это, используя постбэк javascript, чтобы выбрать один из загружаемых элементов, что заставило текст правильно отображаться. Я думаю, что это расширение ошибки, с которой я столкнулся в моем первоначальном вопросе.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...