如何添加按钮或链接到标准控制器与应用标签不同的visualforce页面?

mas*_*san 0 salesforce visualforce apex-code

我有visualforce页面CompetitorSearch.page使用CompSearchDummy__c标准控制器.

<apex:page StandardController="CompSearchDummy__c" extensions="CompetitorSearch">
Run Code Online (Sandbox Code Playgroud)

如果我要在页面上添加自定义按钮CompSearchDummy,则CompetitorSearch.page显示页面目标.

但我有Talent使用的页面,Talent__c sObject当我尝试添加自定义按钮并尝试设置目的地时,CompetitorSearch.page不会显示为选项,因为我没有设置Talent__cstandard controller.

是否有可能以某种方式将我的CompetitorSearch.page链接添加到Talent页面?

rya*_*ard 5

如果我正确理解您的问题,您想添加一个apex:commandButton转到另一个页面.当您在同一页面上时,它只是刷新本身,但是要转到另一个页面,您需要指定一个操作,该操作apex:commandButton指向控制器扩展中的方法,该方法返回您想要去的地方的PageReference.像这样:

<apex:commandButton action="{!gotoCompetitorSearch}" value="Competitor Search" />

public PageReference gotoCompetitorSearch() {
    return Page.CompetitorSearch;
}
Run Code Online (Sandbox Code Playgroud)

注意,如果你真的不需要一个按钮或特殊逻辑而只想转到另一个页面,你只apex:outputLink需要一个不需要控制器扩展就可以做到这一点,如下所示:

<apex:outputLink value="{!$Page.CompetitorSearch}">CompetitorSearch</apex:outputLink>
Run Code Online (Sandbox Code Playgroud)