2012-06-26 2 views
0

페이지를로드하는 동안 무작위 이미지를로드하고 싶지만 구문이 asp : image 또는 img 중 어떤 것인지 확실하지 않습니다.asp.net 무작위 이미지 소스

파일은 모두 같은 이름되지만 끝에 번호 그래서 나는 할 수 :

string Get_RandomImage() 
{ 
    Random random = new Random(); 
    return "~/images/image" + random.Next(1, 23) + ".jpg"; 
} 

을하지만 이미지가 그래서 난 그냥 뒤에 코드에서 image.ImageURL = 뭔가를 질수 <ProgressTemplate> 내 .

aspx 페이지에서 asp : Image를 선언 할 때 임의의 메서드를 호출하려면 어떻게해야합니까?

ImageURL='<%#Get_RandomImage()%>' 

이 작동하지 않습니다.

답변

0

우선 Get_RandomImage 메서드 외부에서 random 변수를 초기화하고 정적으로 만들고 해당 메서드의 액세스 가능성 수준을 protected으로 변경해야합니다. 페이지 또는 이미지의 상위 컨트롤에서 DataBind을 호출하는 경우에만 ImageURL='<%#Get_RandomImage()%>과 같은 식을 사용할 수도 있습니다.

<asp:UpdateProgress runat="server" > 
    <ProgressTemplate> 
      <asp:UpdatePanel runat="server" UpdateMode="Always" > 
       <ContentTemplate> 
        <%--Put your image here--%> 
        <%= DateTime.Now %> 
       </ContentTemplate> 
      </asp:UpdatePanel> 
    </ProgressTemplate> 
</asp:UpdateProgress> 
+0

좋아요. 이미지로 이미지 img = updateProgress.FindControl ("randomImg")을 완료했습니다. img.ImageURL = Get_RandomImage()하지만 페이지를 새로 고칠 때 이미지가 무작위이지만 모든 게시물에 임의의 이미지가있는 원본을 볼 수는 있지만 다시 게시 할 때는 이미지가 표시되지 않습니다. 그것을 고치는 방법? – user1468537

+0

'UpdatePanel' 컨트롤로 비동기 포스트 백을한다는 뜻입니까? 그렇다면 비동기 포스트 백에서 updateprogress 컨텐츠를 새로 고치십니까? –

+0

어떻게 완료되었는지 잘 모르겠습니다. 코드를 "상속"했으므로 어디에 설정해야합니까? – user1468537