2011-01-29 35 views
6

Tôi có một ứng dụng Silverlight đơn giản và tôi cần phải thêm thanh cuộn trình duyệt web cho nó. (Thanh cuộn không bên trong ứng dụng Silverlight của tôi)Trình duyệt thanh cuộn vấn đề với ứng dụng Silverlight. (Html)

Vì vậy, tôi có html:

<style type="text/css"> 
html, body { 
    height: 100%; 
    overflow: auto; 
} 
body { 
    padding: 0; 
    margin: 0; 
} 
#silverlightControlHost { 
    height: 100%; 
    min-height:600px; 
    min-width:800px; 
    text-align:center; 
} 
</style><body> 
<form id="form1" runat="server" style="height:100%"> 
<div id="silverlightControlHost"> 
    <object data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="100%" height="100%">  
     <param name="source" value="ClientBin/Infopulse.MobileOptimizer.xap"/>   
     <param name="onError" value="onSilverlightError" /> 
     <param name="background" value="white" /> 
     <param name="minRuntimeVersion" value="4.0.50401.0" /> 
     <param name="autoUpgrade" value="true" />  
     <param name="culture" value="ru-ru" /> 
     <param name="uiculture" value="ru-ru" /> 
     <a href="http://go.microsoft.com/fwlink/?LinkID=149156&v=4.0.50401.0" style="text-decoration:none"> 
      <img src="http://go.microsoft.com/fwlink/?LinkId=161376" alt="Get Microsoft Silverlight" style="border-style:none"/> 
     </a> 
    </object><iframe id="_sl_historyFrame" style="visibility:hidden;height:0px;width:0px;border:0px"></iframe></div> 
</form> 
</body> 

Và tôi phải đối mặt với vấn đề tiếp theo: thanh cuộn dọc làm việc không đúng cách khi thanh cuộn được kích hoạt ứng dụng Silverlight không phù hợp với nội dung của trang. (Mũi tên màu đỏ trên màn hình hiển thị khu vực không có ứng dụng Silverlight) Tôi không làm cách nào để giải quyết vấn đề này. Chiều rộng phù hợp với bình thường. Bên trong nội dung ứng dụng Silverlight thiết lập để căng

Ảnh: Problem with scroll bars

tôi sẽ biết ơn đối với bất kỳ thông tin

enter image description here

Trả lời

8

Chúng tôi đã có cùng một vấn đề trong IE và Chrome và giải quyết nó sử dụng Javascript:

  1. Thêm Javascript sau để trang kiểm tra Silverlight của bạn.

    window.onload = resizeObject; 
    window.onresize = resizeObject; 
    function resizeObject() { 
        var height = document.getElementById('silverlightControlHost').offsetHeight; 
        document.getElementById('silverlightObject').height = height; 
    } 
    
  2. Cung cấp thẻ OBJECT của bạn ID 'silverlightObject'.

    <object id="silverlightObject" data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="100%" height="100%"> 
    </object> 
    
  3. Kiểm tra.

+0

Một đồng nghiệp đã đề cập đến tôi rằng chúng tôi cũng phải thay đổi kích thước chiều rộng để tránh bị cuốn thanh cuộn ngang. – Jedidja

2

Các bạn đã thử đặt một overflow: auto; trong div #silverlightControlHost style? và xóa thuộc tính khỏi html, body

+1

không. Tôi sẽ thử nó ngay bây giờ. – Evgeny

+1

Chỉ cùng một vấn đề! – Evgeny

+1

Ok, có thể tôi đã nhận được câu hỏi sai .. Bạn đang cố gắng đạt được điều gì? Bạn có muốn div #silverlightControlHost cuộn theo kích thước đối tượng nhúng không? –

2

Giá trị min-heightmin-width trong số #silverlightControlHost css của bạn trông thật lớn khi so sánh với ảnh chụp màn hình của bạn.

Bạn đã thử thay đổi các giá trị của chúng (hoặc loại bỏ chúng hoàn toàn) để kiểm tra xem nó có ảnh hưởng đến màn hình không?

Nếu div của bạn lớn hơn cửa sổ trình duyệt (xuất hiện trong nhận xét của bạn) thì điều đó sẽ giải thích các thanh cuộn. Thực hiện các kích thước tối thiểu của div nhỏ hơn (nếu bạn có thể).

+1

Trên màn hình được taked khi kích thước tối thiểu là 640x480. Không có ứng dụng giá trị nhỏ trông hoàn hảo nhưng không có thanh cuộn ...Và chiều rộng hoạt động bình thường (chỉ trang nội dung màu trắng bên trong ứng dụng Silverlight)! Với chiều cao tôi có vấn đề – Evgeny

+1

@Evgeny - điều đó sẽ giải thích nó. Div của bạn lớn hơn kích thước màn hình, do đó các thanh cuộn. – ChrisF

+1

Xin lỗi, tôi không hiểu. Tôi cần thanh cuộn cho ứng dụng của tôi nhưng thanh cuộn dọc (chiều cao) cây trồng ứng dụng Silverlight và tôi có thể cuộn nhưng ứng dụng bị cắt ... – Evgeny

1

tôi quản lý để giải quyết nó chỉ sử dụng CSS, bằng cách thêm chỉ những dòng CSS để trang web của tôi:

body 
{ 
    padding:0px; 
    margin:0px; 
    overflow:hidden; 
} 

.silverlightControlHost 
{ 
    height:100%; 
} 

html, body 
{ 
    height: 100% 
} 

Và dĩ nhiên giả định rằng div giữ đối tượng html Silverlight có lớp giao ' silverlightControlHost '

Các vấn đề liên quan