0

我需要从后面的代码中注册我的 css 文件。最初我使用了以下代码:

CssRegistration.Register("myStyles.css", true);

问题是,像这样,该文件预计位于布局文件夹中的 1033/styles 之类的文件夹中。现在有我的问题:对于每个国家(或语言区域),我需要将我的 css 复制到另一个 xxyy/styles 文件夹中。直到现在,解决这种情况的每一次尝试都失败了。

到目前为止我尝试了什么

设置路径:

CssRegistration.Register("/_layouts/myFolder/myStyles.css", true);

这可行,但如果我尝试在 Sharepoint 中更改主题,webpart 将不再更改。

使用这种方式:

CssRegistration cssRegistration = new CssRegistration 
{ 
  After = "corev4.css", 
  Name = "/_layouts/MyFolder/myStyles.css",
  EnableTheaming = true
}; 
Controls.Add(cssRegistration); 

这边情况一样。。。

有人知道更多吗?

4

1 回答 1

0

我做过几次这样的事情,从来没有遇到过问题。首先,您必须在您的 Visual Studio 项目中映射 Layouts 文件夹,然后将 CSS 插入那里(但我想您已经这样做了)

然后你必须在你的代码中这样做:

CssLink cssLink = new CssLink();
cssLink.DefaultUrl="/_layouts/PROJECTNAME/styles/FILE.css";
        if (!this.Page.Header.Controls.Contains(cssLink)) {
            this.Page.Header.Controls.Add(cssLink);
        }

问候,

佩德罗

Mixit.nl

于 2012-06-26T09:21:12.153 回答