당신은 일부 사용자 지정 코드를 추가하는 시도하고 이미지가 발견되지 않는 경우 기본 이미지를로드 Image.Value 속성에이를 사용할 수 있습니다
Public Function GetImage(ByRef CustomerNumber As String) As String
' Customer image
Dim ImageCustomerURL As String
ImageCustomerURL = "http://localhost/images/" + CustomerNumber + "/logo.gif"
' Default Image if customer image does not exist
Dim ImageDefaultURL As String
ImageDefaultURL = "http://localhost/images/default.gif"
' Create a web request to see if customer image exists
Dim m_Req As System.Net.HttpWebRequest = System.Net.HttpWebRequest.Create(ImageCustomerURL)
Try
Dim HttpWResp As System.Net.HttpWebResponse = CType(m_Req.GetResponse(), System.Net.HttpWebResponse)
If HttpWResp.StatusCode = System.Net.HttpStatusCode.OK
Return ImageCustomerURL
Else
Return ImageDefaultURL
End If
Catch ex As System.Net.WebException
If ex.Status = System.Net.WebExceptionStatus.ProtocolError Then
Return ImageDefaultURL
End If
End Try
Return ImageDefaultURL
End Function
이 그런 다음 Image.Value 속성 표현은 다음과 같습니다
=Code.GetImage(iCustomerNumber.ToString())
편집 : Visibility.Hidden 속성을 설정하는 대신 기본 이미지
음을 사용하여, 나는 그것을 줄 알았는데 기본 이미지가 아닌 빈 공간을 가지고 좋을하지만 정말 같은 생각 :
Public Function HideImage(ByRef CustomerNumber As String) As Boolean
' Customer image
Dim ImageCustomerURL As String
ImageCustomerURL = "http://localhost/images/" + CustomerNumber + "/logo.gif"
' Create a web request to see if customer image exists
Dim m_Req As System.Net.HttpWebRequest = System.Net.HttpWebRequest.Create(ImageCustomerURL)
Try
Dim HttpWResp As System.Net.HttpWebResponse = CType(m_Req.GetResponse(), System.Net.HttpWebResponse)
If HttpWResp.StatusCode = System.Net.HttpStatusCode.OK
Return False
Else
Return True
End If
Catch ex As System.Net.WebException
If ex.Status = System.Net.WebExceptionStatus.ProtocolError Then
Return True
End If
End Try
Return True
End Function
는 그런 다음 Visibility.Hidden 속성 식입니다 : 내가 컨트롤을 숨기기 위해 찾고 있었다
=Code.HideImage(iCustomerNumber.ToString())
! ! 내가 언급 한 것처럼 더러운 해결책으로 넘어갈 수 있습니다. 가시성을 조정할 수없는 경우입니다. 루트 폴더 자체에 기본 이미지가있을 수 있습니다. 각 하위 폴더에 "ImageDefaultURL"솔루션의 인라인으로 복제되는 것이 아니라 더 정확하게 말하십시오! – Nauman
물론 가시성을 조정할 수 있습니다. 컨트롤을 숨기는 것은 실제로 같은 생각입니다. 한 곳에서 기본 이미지가있는 첫 번째 솔루션은 더러운 솔루션에 따라 모든 고객 폴더의 이미지를 복제 할 필요가 없음을 의미합니다. 한 곳에서만 존재하지만 고객 이미지가있는 경우 대신 표시됩니다. –