Hi Samuel,
I've also got the result you mentioned on my local enviornment.
=================
if you want uiculture=auto while still
allowing user to change uiculture, the only way is to set uiculture = auto
in
web.config and not on the page. When uiculture = auto is set in web.config,
we can use application event to override it, but when uiculture=auto is set
in page directive, you cannot override it for declaratively bound resources.
================
I think the difference between the UICulture in @page directive and
web.config maybe the @Page directive's setting will be forced in some
internal time during the page's processing which makes our adjusting in
application level event be overrided. Anyway, IMO, we'd recommend that we
avoiding using the "Auto" setting together with custom culture handling ,
thus there will exist no such potiential conflict.
Thanks,
Steven Cheng
Microsoft Online Support
Get Secure!
www.microsoft.com/security
(This posting is provided "AS IS", with no warranties, and confers no
rights.)
--------------------
| Thread-Topic: Localization: user selectable UICulture w/ UICulture = auto
| thread-index: AcWavK9UvxFPttTERyG0bfUj0lZGdw==
| X-WBNR-Posting-Host: 64.180.16.145
| From: =?Utf-8?B?U2FtdWVs?= <pr********@nospam.nospam>
| References: <0D**********************************@microsoft.co m>
<a1**************************@news.microsoft.com >
| Subject: Re: Localization: user selectable UICulture w/ UICulture = auto
| Date: Sat, 6 Aug 2005 12:26:03 -0700
| Lines: 64
| Message-ID: <EB**********************************@microsoft.co m>
| MIME-Version: 1.0
| Content-Type: text/plain;
| charset="Utf-8"
| Content-Transfer-Encoding: 7bit
| X-Newsreader: Microsoft CDO for Windows 2000
| Content-Class: urn:content-classes:message
| Importance: normal
| Priority: normal
| X-MimeOLE: Produced By Microsoft MimeOLE V6.00.3790.0
| Newsgroups: microsoft.public.dotnet.framework.aspnet
| NNTP-Posting-Host: TK2MSFTNGXA03.phx.gbl 10.40.2.250
| Path: TK2MSFTNGXA01.phx.gbl!TK2MSFTNGXA03.phx.gbl
| Xref: TK2MSFTNGXA01.phx.gbl
microsoft.public.dotnet.framework.aspnet:116515
| X-Tomcat-NG: microsoft.public.dotnet.framework.aspnet
|
| Hi Tom,
|
| Thanks for your reply. Actually what's in the blog is what I did in my
code
| already. The only difference is that he uses PreRequestHandlerExecute and
I
| used PostAcquireRequestState (no difference)
|
| However, I found the solution: if you want uiculture=auto while still
| allowing user to change uiculture, the only way is to set uiculture =
auto in
| web.config and not on the page. When uiculture = auto is set in
web.config,
| we can use application event to override it, but when uiculture=auto is
set
| in page directive, you cannot override it for declaratively bound
resources.
|
| "To********************@pandora.be" wrote:
|
| > Hi Samuel,
| >
| > I think the last section of this blog post can help you :
| >
http://dotnetjunkies.com/WebLog/anor.../13/54271.aspx
| >
| > Let me know if you have any more questions..
| >
| > Cheers,
| > Tom Pester
| >
| > > Hi,
| > >
| > > I am running into a problem of mixing UICulture = auto and allowing
| > > users to select culture using a dropdown list.
| > >
| > > I am detecting a querystring, "setlang", and when found, setting the
| > > CurrentUICulture to what's specified in the querystring. Since I want
| > > to allow UICulture auto detecting, I add UICulture = "auto" to page
| > > directive on each page.
| > >
| > > Now, here is the problem: I don't know on what event (page or
| > > application) I should set the CurrentUICulture based on the
| > > querystring, "setlang".
| > >
| > > Since the UICulture = "auto", I cannot utilize any of the application
| > > events to set CurrentUICulture. I could use PostAcquireRequestState if
| > > UICulture is not auto on in page directive.
| > >
| > > I cannot use page event effectively either. I tried to set
| > > CurrentUICulture based on querystring in Page.PreInit. It seems that
| > > if I programmatically set control's text to a resource string
| > > (textbox1.text = resources.language.astring) everything works fine,
| > > but if I use explicit binding declaratively on the control (<%$
| > > Resources: language, astring%>), it ignores the CurrentUICulture set
| > > in Page.PreInit and displays the string from the culture the page auto
| > > detects. Not being able to bind declaratively is a produtivity killer
| > > and therefore not acceptable.
| > >
| > > Can anyone shed some light on how I can accomplish this? I will repeat
| > > what I want to accomplish:
| > >
| > > 1) UICulture = "auto" on page directive (or can I set it somewhere
| > > else?)
| > > 2) user selectable cultures
| > > 3) being able to bind resources to control declaratively (<%$
| > > Resources:
| > > language, astring%>)
| >
| >
| >
|