2010-09-13 62 views
0

我知道 - 2007年已經過時 - 但我目前無法切換到較新的控件。RadTreeView Telerik 2007在IE8問題解決方法?

我已經想通了,TreeView中沒有正確顯示在IE8由於內部功能:

RadTreeView.AlignImage=function(_4e){ 
_4e.align="absmiddle"; 
_4e.style.display="inline"; 
if(!document.all||window.opera){ 
if(_4e.nextSibling&&_4e.nextSibling.tagName=="SPAN"){ 
_4e.nextSibling.style.verticalAlign="middle"; 
} 
if(_4e.nextSibling&&_4e.nextSibling.tagName=="INPUT"){ 
_4e.nextSibling.style.verticalAlign="middle"; 
} 

的修復將是:

RadTreeView.AlignImage=function(_4e){ 
_4e.align="middle"; 
_4e.style.display="inline"; 
if(!document.all||window.opera){ 
if(_4e.nextSibling&&_4e.nextSibling.tagName=="SPAN"){ 
_4e.nextSibling.style.verticalAlign="middle"; 
} 
if(_4e.nextSibling&&_4e.nextSibling.tagName=="INPUT"){ 
_4e.nextSibling.style.verticalAlign="middle"; 
} 

編輯:這似乎是使用作爲.NET程序集中的absMiddle。上述功能是JavaScript功能。

但是,我怎樣才能在編譯的DLL中改變這一點?有沒有什麼辦法可以解決這個問題?

我需要使用代碼反射嗎?還是有任何解決方法來覆蓋AlignImage函數?

編輯


快速和骯髒的修復程序設定一個css(EDIT2:此修復樹形視圖 - 但可能會導致輸入和IMG HTML元素ohter問題)

input 
{ 
    vertical-align: middle!important; 
} 
img 
{ 
    vertical-align: middle!important; 
} 

回答

0

Andreas,我會跳到Telerik AJAX樹視圖,因爲我知道它完全支持IE8,並且在發佈時支持IE9。對於舊的樹視圖,您應該使用解決方法或設置IE7兼容模式,以確保它將被正確渲染。

+0

它已經設置爲IE7兼容性。客戶不允許使用AJAX。我的CSS hack現在已經修復了 - 我只需要在接下來的4年內支持IE6和IE8。無需IE9支持。 – 2010-09-14 15:49:50