| ContainerID |
string |
HyperLink 개체는 아래와 같은 소스로 이루어져 있습니다.
<span><img src="점 이미지" /><a href="링크경로">하이퍼 링크입니다.</a></span>
C#에서 개체의 Visible 속성에 false를 주게되면, DOT 이미지나 링크 텍스트나 모두 화면에서 사라지게 됩니다.
HyperLink2.Visible = false; // HyperLink 개체 자체가 사라짐
문제는 javascript나 jquery에서 HyperLink 및 DOT 이미지, 필수입력 아이콘 등을 모두 사라지게 하려면 어떻게 하면 될까요?
아마도 개체의 ClientID를 이용하여 숨기려고 할 것 입니다.
<script type="text/javascript">
$(document).ready(function () {
$("#<%=HyperLink2.ClientID %>").hide();
});
</script>
불행히도 이 방법으로는 DOT 이미지를 없앨 수 없습니다.
왜냐면, HyperLink2.ClientID는 A링크의 ClientID를 반환하기 때문이지요.
우리가 없애고자 하는 것은 그게 아니잖아요?
A링크 뿐만 아니라, 앞에 있는 IMG태그도 없애야 하잖아요?
이럴때는 아래와 같이 ContainerID를 이용하시면 됩니다.
<script type="text/javascript">
$(document).ready(function () {
$("#<%=HyperLink2.ContainerID %>").hide();
});
</script>
|
| ResourceName |
string |
ResourceName 속성을 지정하시면, App_GlobalResources 폴더에 있는 리소스를 자동으로 찾습니다.
다국어를 지원하는 웹 사이트를 제작중이시라면 유용하게 활용되겠지요?
주의하실 점은 ResourceName에는 해당 리소스의 확장자를 입력하시면 안 됩니다.
아래와 같이 확장자를 제외한, 리소스명을 입력해 주세요.
<bf:HyperLink ID="HyperLink1" runat="server" ResourceName="Language" Text="Hello" />

이때 아래와 같이 Text 속성 값이 리소스 키가 됩니다. 
리소스는 브라우저의 언어설정을 최우선적으로 따라가게 됩니다.
그런데, 만약 강제로 언어설정을 지정하고 싶다면 어떻게 해야 할까요?
아래와 같이 web.config에 언어 정보를 강제로 지정할 수 있습니다.
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.web>
<globalization uiCulture="ko-KR" />
</system.web>
</configuration>
한 가지 추가적으로 주의하실 점은, 간혹 아래와 같은 코드로 리소스 적용이 안 된다고 불평하시는 경우가 있습니다.
<bf:HyperLink ID="Label1" runat="server" ResourceName="Language">
Hello</bf:HyperLink>
화면에 출력되는 Text의 속성은 "안녕"이라고 오해하실 수 있으나, C#에서는 이 속성을 "wrwnwt안녕"이라고 인식 합니다.
줄바꿈과 탭이 하나 들어갔기 때문이지요.
그렇다면, 리소스에도 동일하게 적용해주셔야 하는데요.
그렇지 않으면, 정확한 리소스를 찾을 수가 없게 됩니다.
|