Xamarin Forms data binding from xaml
I have an <Entry>
in xaml, and I want to get that value the user types.
<Entry x:name="enteredInput>
The file with that <Entry>
is in startingPage.xaml with a code behind class startingPage.xaml.cs.
Then I would like to transfer that value in the <Label>
element of a different xaml, MainPage.xaml.
xamarin.forms
add a comment |
I have an <Entry>
in xaml, and I want to get that value the user types.
<Entry x:name="enteredInput>
The file with that <Entry>
is in startingPage.xaml with a code behind class startingPage.xaml.cs.
Then I would like to transfer that value in the <Label>
element of a different xaml, MainPage.xaml.
xamarin.forms
in your code behind, just pass the value of enteredInput.Text to your 2nd page and assign it to a Label
– Jason
Nov 28 '18 at 4:04
add a comment |
I have an <Entry>
in xaml, and I want to get that value the user types.
<Entry x:name="enteredInput>
The file with that <Entry>
is in startingPage.xaml with a code behind class startingPage.xaml.cs.
Then I would like to transfer that value in the <Label>
element of a different xaml, MainPage.xaml.
xamarin.forms
I have an <Entry>
in xaml, and I want to get that value the user types.
<Entry x:name="enteredInput>
The file with that <Entry>
is in startingPage.xaml with a code behind class startingPage.xaml.cs.
Then I would like to transfer that value in the <Label>
element of a different xaml, MainPage.xaml.
xamarin.forms
xamarin.forms
edited Nov 28 '18 at 6:24
Himanshu Dwivedi
3,88731633
3,88731633
asked Nov 28 '18 at 4:02
Jordan DeVaneyJordan DeVaney
82
82
in your code behind, just pass the value of enteredInput.Text to your 2nd page and assign it to a Label
– Jason
Nov 28 '18 at 4:04
add a comment |
in your code behind, just pass the value of enteredInput.Text to your 2nd page and assign it to a Label
– Jason
Nov 28 '18 at 4:04
in your code behind, just pass the value of enteredInput.Text to your 2nd page and assign it to a Label
– Jason
Nov 28 '18 at 4:04
in your code behind, just pass the value of enteredInput.Text to your 2nd page and assign it to a Label
– Jason
Nov 28 '18 at 4:04
add a comment |
1 Answer
1
active
oldest
votes
In your second page, add another constructor with string parameter.
For ex, If your page name is StartingPage.xaml, then add another constructor like below. Inside, assign the incoming value to your label.
public StartingPage(string entryTextFromStartingPage)
{
InitializeComponent();
lblEntryTextDisplay.Text = entryTextFromStartingPage;
}
From the StartingPage.xaml.cs, add the below code in a button click or any event that you are calling the Main page,
Navigation.PushAsync(new MainPage(enteredInput.Text);
Thank you this works. It's one of those this that makes you go duh...I should of though about overloading the constructor. Do you think it would be more maintainable using the binding class, if you were to bind more values?
– Jordan DeVaney
Nov 28 '18 at 6:05
One more alternative is using Singleton pattern for assigning and accessing global variables. You can access in code behind as well as viewmodel classes. But you have to clear them once you have used it. Sample below,
– Abdul Gani
Nov 28 '18 at 6:11
public sealed class SingletonGlobal { private static SingletonGlobal instance = null; private static readonly object padlock = new object(); public static SingletonGlobal Instance { get { lock (padlock) { if (instance == null) { instance = new ApplicationCache(); } return instance; } } } public string FirstName { get; set; } }
– Abdul Gani
Nov 28 '18 at 6:12
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53511933%2fxamarin-forms-data-binding-from-xaml%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
In your second page, add another constructor with string parameter.
For ex, If your page name is StartingPage.xaml, then add another constructor like below. Inside, assign the incoming value to your label.
public StartingPage(string entryTextFromStartingPage)
{
InitializeComponent();
lblEntryTextDisplay.Text = entryTextFromStartingPage;
}
From the StartingPage.xaml.cs, add the below code in a button click or any event that you are calling the Main page,
Navigation.PushAsync(new MainPage(enteredInput.Text);
Thank you this works. It's one of those this that makes you go duh...I should of though about overloading the constructor. Do you think it would be more maintainable using the binding class, if you were to bind more values?
– Jordan DeVaney
Nov 28 '18 at 6:05
One more alternative is using Singleton pattern for assigning and accessing global variables. You can access in code behind as well as viewmodel classes. But you have to clear them once you have used it. Sample below,
– Abdul Gani
Nov 28 '18 at 6:11
public sealed class SingletonGlobal { private static SingletonGlobal instance = null; private static readonly object padlock = new object(); public static SingletonGlobal Instance { get { lock (padlock) { if (instance == null) { instance = new ApplicationCache(); } return instance; } } } public string FirstName { get; set; } }
– Abdul Gani
Nov 28 '18 at 6:12
add a comment |
In your second page, add another constructor with string parameter.
For ex, If your page name is StartingPage.xaml, then add another constructor like below. Inside, assign the incoming value to your label.
public StartingPage(string entryTextFromStartingPage)
{
InitializeComponent();
lblEntryTextDisplay.Text = entryTextFromStartingPage;
}
From the StartingPage.xaml.cs, add the below code in a button click or any event that you are calling the Main page,
Navigation.PushAsync(new MainPage(enteredInput.Text);
Thank you this works. It's one of those this that makes you go duh...I should of though about overloading the constructor. Do you think it would be more maintainable using the binding class, if you were to bind more values?
– Jordan DeVaney
Nov 28 '18 at 6:05
One more alternative is using Singleton pattern for assigning and accessing global variables. You can access in code behind as well as viewmodel classes. But you have to clear them once you have used it. Sample below,
– Abdul Gani
Nov 28 '18 at 6:11
public sealed class SingletonGlobal { private static SingletonGlobal instance = null; private static readonly object padlock = new object(); public static SingletonGlobal Instance { get { lock (padlock) { if (instance == null) { instance = new ApplicationCache(); } return instance; } } } public string FirstName { get; set; } }
– Abdul Gani
Nov 28 '18 at 6:12
add a comment |
In your second page, add another constructor with string parameter.
For ex, If your page name is StartingPage.xaml, then add another constructor like below. Inside, assign the incoming value to your label.
public StartingPage(string entryTextFromStartingPage)
{
InitializeComponent();
lblEntryTextDisplay.Text = entryTextFromStartingPage;
}
From the StartingPage.xaml.cs, add the below code in a button click or any event that you are calling the Main page,
Navigation.PushAsync(new MainPage(enteredInput.Text);
In your second page, add another constructor with string parameter.
For ex, If your page name is StartingPage.xaml, then add another constructor like below. Inside, assign the incoming value to your label.
public StartingPage(string entryTextFromStartingPage)
{
InitializeComponent();
lblEntryTextDisplay.Text = entryTextFromStartingPage;
}
From the StartingPage.xaml.cs, add the below code in a button click or any event that you are calling the Main page,
Navigation.PushAsync(new MainPage(enteredInput.Text);
answered Nov 28 '18 at 4:48
Abdul GaniAbdul Gani
42416
42416
Thank you this works. It's one of those this that makes you go duh...I should of though about overloading the constructor. Do you think it would be more maintainable using the binding class, if you were to bind more values?
– Jordan DeVaney
Nov 28 '18 at 6:05
One more alternative is using Singleton pattern for assigning and accessing global variables. You can access in code behind as well as viewmodel classes. But you have to clear them once you have used it. Sample below,
– Abdul Gani
Nov 28 '18 at 6:11
public sealed class SingletonGlobal { private static SingletonGlobal instance = null; private static readonly object padlock = new object(); public static SingletonGlobal Instance { get { lock (padlock) { if (instance == null) { instance = new ApplicationCache(); } return instance; } } } public string FirstName { get; set; } }
– Abdul Gani
Nov 28 '18 at 6:12
add a comment |
Thank you this works. It's one of those this that makes you go duh...I should of though about overloading the constructor. Do you think it would be more maintainable using the binding class, if you were to bind more values?
– Jordan DeVaney
Nov 28 '18 at 6:05
One more alternative is using Singleton pattern for assigning and accessing global variables. You can access in code behind as well as viewmodel classes. But you have to clear them once you have used it. Sample below,
– Abdul Gani
Nov 28 '18 at 6:11
public sealed class SingletonGlobal { private static SingletonGlobal instance = null; private static readonly object padlock = new object(); public static SingletonGlobal Instance { get { lock (padlock) { if (instance == null) { instance = new ApplicationCache(); } return instance; } } } public string FirstName { get; set; } }
– Abdul Gani
Nov 28 '18 at 6:12
Thank you this works. It's one of those this that makes you go duh...I should of though about overloading the constructor. Do you think it would be more maintainable using the binding class, if you were to bind more values?
– Jordan DeVaney
Nov 28 '18 at 6:05
Thank you this works. It's one of those this that makes you go duh...I should of though about overloading the constructor. Do you think it would be more maintainable using the binding class, if you were to bind more values?
– Jordan DeVaney
Nov 28 '18 at 6:05
One more alternative is using Singleton pattern for assigning and accessing global variables. You can access in code behind as well as viewmodel classes. But you have to clear them once you have used it. Sample below,
– Abdul Gani
Nov 28 '18 at 6:11
One more alternative is using Singleton pattern for assigning and accessing global variables. You can access in code behind as well as viewmodel classes. But you have to clear them once you have used it. Sample below,
– Abdul Gani
Nov 28 '18 at 6:11
public sealed class SingletonGlobal { private static SingletonGlobal instance = null; private static readonly object padlock = new object(); public static SingletonGlobal Instance { get { lock (padlock) { if (instance == null) { instance = new ApplicationCache(); } return instance; } } } public string FirstName { get; set; } }
– Abdul Gani
Nov 28 '18 at 6:12
public sealed class SingletonGlobal { private static SingletonGlobal instance = null; private static readonly object padlock = new object(); public static SingletonGlobal Instance { get { lock (padlock) { if (instance == null) { instance = new ApplicationCache(); } return instance; } } } public string FirstName { get; set; } }
– Abdul Gani
Nov 28 '18 at 6:12
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53511933%2fxamarin-forms-data-binding-from-xaml%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
in your code behind, just pass the value of enteredInput.Text to your 2nd page and assign it to a Label
– Jason
Nov 28 '18 at 4:04