0

如何在从代码隐藏创建的新页面上设置内部快捷方式?

斯蒂格

4

3 回答 3

0

我相信这样的事情应该有效:

int shortcutId = ...;

newPage.LinkType = PageShortcutType.Shortcut;
newPage.Property["PageShortcutLink"].Value = new PageReference(shortcutId);
于 2012-01-01T19:48:36.413 回答
0

您必须调用 CreateWritableClone 方法,因为属性 PageShortcutLink 是只读的

这是我的代码:

PageReference prtest = new PageReference(21602);
PageReference prlinked = new PageReference(21603);
PageData pdtest = DataFactory.Instance.GetPage(prtest);
PageData pdClone = pdtest.CreateWritableClone();
pdClone.LinkType = PageShortcutType.Shortcut;
pdClone.Property["PageShortcutLink"].Value = prlinked;
DataFactory.Instance.Save(pdClone, SaveAction.Publish);
于 2012-02-21T10:35:16.527 回答
0

下一个代码为我完成了这项工作(但它适用于外部链接):

         if (!string.IsNullOrEmpty(release.link))
        {
            page.LinkType = PageShortcutType.External;
            page.LinkURL = release.link;
        }

实际上,我需要设置一个外部链接 url 并尝试输入如下内容:

page.Property["PageExternalUrl"].Value = "https://somethingnotsimpleaddress.com";

但是后来我遇到了一个例外,即无法将“simpleaddress”设置为属性。这就是我改用“LinkUrl”的原因。

于 2021-09-06T11:06:25.170 回答